/********************************
* インナー
********************************/

/********************************
* フォント
********************************/

/********************************
* カラー
********************************/

html {
	font-size: 16px;
}

body {
	-webkit-font-feature-settings: "palt" 1;
	        font-feature-settings: "palt" 1;
	color: #000;
	font-family: "Hiragino Sans", "ヒラギノ角ゴシック", "Yu Gothic", "游ゴシック", "Meiryo", sans-serif;
	font-weight: 300;
	overflow-x: hidden;
	position: relative;
  transition: opacity 0.3s ease;

}

/* link */

/* ============================================ */

a {
	color: inherit;
	cursor: pointer;
	text-decoration: none;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

a:hover {
	text-decoration: none !important;
}

/* img */

/* ============================================ */

img {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
	width: 100%;
}

a[href^="tel:"] {
	pointer-events: none;
}

/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */

/* ============================================ */

*,
::before,
::after {
	border-style: solid;
	border-width: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

/* Document */

/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
	-webkit-text-size-adjust: 100%; /* 2 */
	-webkit-tap-highlight-color: transparent; /* 3*/
	line-height: 1.15; /* 1 */
}

/* Sections */

/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
	display: block;
}

/* Vertical rhythm */

/* ============================================ */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

/* Headings */

/* ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}

h1.wp-block-heading {
	font-size: 1.5rem;
	font-weight: revert;
	margin: 0;
}

h2.wp-block-heading {
	font-size: 1.5rem;
	font-weight: revert;
	margin: 0;
}

h3.wp-block-heading {
	font-size: 1.4rem;
	font-weight: revert;
	margin: 0;
}

h4.wp-block-heading {
	font-size: 1.3rem;
	font-weight: revert;
	margin: 0;
}

h5.wp-block-heading {
	font-size: 1.2rem;
	font-weight: revert;
	margin: 0;
}

h6.wp-block-heading {
	font-size: 1.1rem;
	font-weight: revert;
	margin: 0;
}

/* Lists (enumeration) */

/* ============================================ */

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

/* Lists (definition) */

/* ============================================ */

dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

/* Grouping content */

/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
	border-top-width: 1px;
	-webkit-box-sizing: content-box;
	        box-sizing: content-box; /* 1 */
	clear: both;
	color: inherit;
	height: 0; /* 1 */
	margin: 0;
	overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: inherit; /* 2 */
}

address {
	font-style: inherit;
}

/* Text-level semantics */

/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
	background-color: transparent;
	color: inherit;
	text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Replaced content */

/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

svg,
img,
embed,
object,
iframe {
	vertical-align: bottom;
}

/* Forms */

/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
	-webkit-appearance: none; /* 1 */
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border-radius: 0;
	color: inherit;
	font: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
	text-transform: inherit; /* 2 */
	vertical-align: middle;
}

/**
 * Correct cursors for clickable elements.
 */

button,
[type=button],
[type=reset],
[type=submit] {
	cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
	cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
	outline: auto;
}

select:disabled {
	opacity: inherit;
}

/**
 * Remove padding
 */

option {
	padding: 0;
}

/**
 * Reset to invisible
 */

fieldset {
	margin: 0;
	min-width: 0;
	padding: 0;
}

legend {
	padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
	overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * Correct the outline style in Safari.
 */

[type=search] {
	outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */

[type=number] {
	-moz-appearance: textfield;
}

/**
 * Clickable labels
 */

label[for] {
	cursor: pointer;
}

/* Interactive */

/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
	outline: auto;
}

/* Tables */

/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
	border-collapse: collapse;
	border-color: inherit; /* 1 */
}

caption {
	text-align: left;
}

td,
th {
	padding: 0;
	vertical-align: top;
}

th {
	font-weight: bold;
	text-align: left;
}

.inview,
.inview200,
.inview300,
.inview400,
.inview500,
.inview600,
.inview700,
.inview800,
.inview900,
.inview1000,
.inview1100,
.inview1200,
.inview1300,
.inview1400,
.inview1500,
.inview1600,
.inview1700,
.inview1800,
.inview1900,
.inview2000,
.inview_init {
	opacity: 0;
	-webkit-transition: all 500ms ease-in-out;
	transition: all 500ms ease-in-out;
}

.inview_up,
.inview_up200,
.inview_up300,
.inview_up400,
.inview_up500,
.inview_up600,
.inview_up700,
.inview_up800,
.inview_up900,
.inview_up1000,
.inview_up1100,
.inview_up1200,
.inview_up1300,
.inview_up1400,
.inview_up1500,
.inview_up1600,
.inview_up1700,
.inview_up1800,
.inview_up1900,
.inview_up2000 {
	-webkit-transform: translate(0, 15px);
	opacity: 0;
	transform: translate(0, 15px);
	-webkit-transition: all 500ms ease-in-out;
	transition: all 500ms ease-in-out;
	will-change: transform;
}

.inview_left,
.inview_left200,
.inview_left300,
.inview_left400,
.inview_left500,
.inview_left600,
.inview_left700,
.inview_left800,
.inview_left900,
.inview_left1000,
.inview_left1100,
.inview_left1200 {
	-webkit-transform: translate(-15px, 0);
	opacity: 0;
	transform: translate(-15px, 0);
	-webkit-transition: all 500ms ease-in-out;
	transition: all 500ms ease-in-out;
	will-change: transform;
}

.inview_right,
.inview_right200,
.inview_right300,
.inview_right400,
.inview_right500,
.inview_right600,
.inview_right700,
.inview_right900,
.inview_right1200 {
	-webkit-transform: translate(15px, 0);
	opacity: 0;
	transform: translate(15px, 0);
	-webkit-transition: all 500ms ease-in-out;
	transition: all 500ms ease-in-out;
	will-change: transform;
}

.inview_action {
	opacity: 1;
}

.inview_up_action {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	        transform: translate(0, 0);
	-webkit-transform: rotate(0.0001deg);
	        transform: rotate(0.0001deg);
}

.inview_left_action {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	        transform: translate(0, 0);
	-webkit-transform: rotate(0.0001deg);
	        transform: rotate(0.0001deg);
}

.inview_right_action {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	        transform: translate(0, 0);
	-webkit-transform: rotate(0.0001deg);
	        transform: rotate(0.0001deg);
}

.zoom,
.zoom2,
.zoom3 {
	opacity: 0;
}

.zoom.popup.is-animated,
.zoom2.popup.is-animated,
.zoom3.popup.is-animated {
	-webkit-animation: popup 0.6s cubic-bezier(0.22, 1, 0.36, 1) 1 forwards;
	        animation: popup 0.6s cubic-bezier(0.22, 1, 0.36, 1) 1 forwards;
}

.bounceInUp,
.bounceInUp200,
.bounceInUp400,
.bounceInUp600,
.bounceInUp600 {
	-webkit-animation-duration: 1s;
	        animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
	opacity: 0;
}

.bounceInUp.go,
.bounceInUp200.go,
.bounceInUp400.go,
.bounceInUp600.go,
.bounceInUp800.go {
	-webkit-animation-name: bounceInUp;
	        animation-name: bounceInUp;
}

.c-fv-anime {
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.c-text-anime__bg {
	background-color: #fff;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
}

.c-fv-text-anime__bg {
	background-color: #fff;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
}

.c-text-slide-horizontal__bg {
	background-color: #fff;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	-webkit-transform: translateX(-100%);
	        transform: translateX(-100%);
	width: 100%;
	z-index: 1;
}

.c-text-anime {
	display: block;
	overflow: hidden;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	z-index: 1;
}

.c-fv-text-anime__text {
	background-color: #fff;
	opacity: 0;
	padding: 0.625rem;
	position: relative;
	z-index: 1;
}

.c-text-anime__text {
	opacity: 0;
	padding: 0.625rem;
	position: relative;
	z-index: 1;
}

.c-fv-en-anime {
	overflow: hidden;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	z-index: 1;
}

.c-fv-en-anime__bg {
	background-color: #fff;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

/* ====================================
# 見出しのアニメーション
==================================== */

.c-heading-anime {
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.c-heading-anime__bg {
	background-color: #fff;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	-webkit-transform: translateX(-100%);
	        transform: translateX(-100%);
	-webkit-transition: -webkit-transform 1s ease-in-out;
	transition: -webkit-transform 1s ease-in-out;
	transition: transform 1s ease-in-out;
	transition: transform 1s ease-in-out, -webkit-transform 1s ease-in-out;
	width: 100%;
	z-index: -1;
}

.c-heading-anime__text {
	-webkit-box-decoration-break: clone;
	background-color: #0092E5;
	box-decoration-break: clone;
	opacity: 1;
	padding: 0.625rem;
	position: relative;
	-webkit-transition: opacity 0.5s ease-in-out 1s;
	transition: opacity 0.5s ease-in-out 1s;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	z-index: 1;
}

.c-heading-anime.show .c-heading-anime__bg {
	-webkit-transform: translateX(100%);
	        transform: translateX(100%);
}

.c-heading-anime.show .c-heading-anime__text {
	opacity: 1;
}

.js-header__nav-list-link-btn {
	display: none;
}

.l-body {
	padding-bottom: 6.25rem;
	padding-top: 3.875rem;
}

.l-footer {
	position: relative;
}

.l-footer__inner {
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 20px;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin: 0 auto;
}

.l-footer__wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
}

.l-footer__left {
	background-color: #fff;
	padding: 5rem 3.125rem;
	width: 25.53%;
}

.l-footer__right {
	background-color: #0092E5;
	padding: 6.25rem 3.4%;
	width: 74.47%;
}

.l-footer__logo {
	display: block;
	margin: 0 auto;
	margin-left: 1.4375rem;
	max-width: 20.125rem;
}

/* ナビゲーション */

.l-footer__nav {
	margin-bottom: 14.0625rem;
}

.l-footer__nav-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 3.75rem 2.5rem;
}

.l-footer__nav-title {
	display: block;
	font-size: 1.125rem;
	font-weight: bold;
	margin-bottom: 0.9375rem;
}

.l-footer__nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.l-footer__nav-list li {
	margin-bottom: 0.625rem;
}

.l-footer__nav-list li a {
	color: #fff;
	font-size: 0.875rem;
	padding-left: 0.625rem;
	position: relative;
	text-decoration: none;
	-webkit-transition: color 0.3s;
	transition: color 0.3s;
}

.l-footer__nav-list li a::before {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	display: block;
	height: 3px;
	left: 0;
	position: absolute;
	top: 0.375rem;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition-duration: 0.3s;
	        transition-duration: 0.3s;
	width: 3px;
	z-index: 1;
}

.l-footer__nav-list li a:hover::before {
	-webkit-transform: translateY(-50%) scale(2.5);
	        transform: translateY(-50%) scale(2.5);
}

/* ボタン部分 */

.l-footer__btn-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
  flex-wrap: wrap;
	gap: 0.8125rem;
	margin-bottom: 2.5rem;
}

.l-footer .l-footer__btn {
	background-color: #fff;
	border: 1px solid #fff;
	color: #0092E5;
	font-size: 1.125rem;
	height: 3.125rem;
	margin: 0;
  max-width: 13.4rem;
	width: 13.4rem;
  text-align: center;
}

.l-footer .l-footer__btn.l-footer__btn-ir {
  font-size: 0.8rem;
}

.l-footer .l-footer__btn.l-footer__btn-comsys {
  transition: opacity 0.3s ease;
}
.l-footer .l-footer__btn.l-footer__btn-comsys:hover {
  opacity: 0.7;
  background-color: #fff;
}
.l-footer .l-footer__btn.l-footer__btn-comsys img {
  width: 100%;
  height: 95%;
  object-fit: contain;
}


.l-footer__sns {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}

.l-footer__sns__link {
	display: block;
	-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
}

.l-footer__sns__link:hover {
	opacity: 0.7;
	-webkit-transform: scale(1.1);
	        transform: scale(1.1);
}

.l-footer__sns__link.l-footer__sns__link--instagram {
	width: 1.375rem;
}

.l-footer__sns__link.l-footer__sns__link--x {
	width: 1.25rem;
}

.l-footer__sns__link.l-footer__sns__link--facebook {
	width: 0.75rem;
}

.l-footer__sns__link.l-footer__sns__link--youtube {
	width: 1.625rem;
}

.l-footer__access {
	font-size: 1rem;
	line-height: 1.5;
	margin-bottom: 1.0625rem;
}

.l-footer__info-copyright {
	font-size: 0.75rem;
}

.l-footer__backtotop {
	bottom: 5rem;
	left: 4.375rem;
	margin: 0 0 0 auto;
	max-width: 55px;
	position: absolute;
	width: 100%;
}

.l-footer__backtotop a svg:hover .svg-elem-1 {
	-webkit-animation: animate-svg-stroke-1 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s both, animate-svg-fill-1 0.3s ease-out 0.5s both;
	        animation: animate-svg-stroke-1 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.44s both, animate-svg-fill-1 0.3s ease-out 0.5s both;
}

.l-footer__backtotop a svg:hover .svg-elem-2 {
	-webkit-animation: animate-svg-stroke-2 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.22s both, animate-svg-fill-2 0.3s ease-out 0.6s both;
	        animation: animate-svg-stroke-2 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.22s both, animate-svg-fill-2 0.3s ease-out 0.6s both;
}

.l-footer__backtotop a svg:hover .svg-elem-3 {
	-webkit-animation: animate-svg-stroke-3 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0s both, animate-svg-fill-3 0.3s ease-out 0.7s both;
	        animation: animate-svg-stroke-3 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0s both, animate-svg-fill-3 0.3s ease-out 0.7s both;
}

.l-footer__backtotop a svg:hover .svg-elem-4 {
	-webkit-animation: animate-svg-stroke-4 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.66s both, animate-svg-fill-4 0.3s ease-out 0.8s both;
	        animation: animate-svg-stroke-4 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.66s both, animate-svg-fill-4 0.3s ease-out 0.8s both;
}

.l-footer__backtotop a svg:hover .svg-elem-5 {
	-webkit-animation: animate-svg-stroke-5 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.88s both, animate-svg-fill-5 0.3s ease-out 0.9s both;
	        animation: animate-svg-stroke-5 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 0.88s both, animate-svg-fill-5 0.3s ease-out 0.9s both;
}

.l-footer__backtotop a svg:hover .svg-elem-6 {
	-webkit-animation: animate-svg-stroke-6 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.1s both, animate-svg-fill-6 0.3s ease-out 1s both;
	        animation: animate-svg-stroke-6 0.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.1s both, animate-svg-fill-6 0.3s ease-out 1s both;
}

.l-header {
	background-color: rgba(0, 0, 0, 0.1);
	position: fixed;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	width: 100%;
	z-index: 100;
  transition: backdrop-filter 0.3s ease-in-out;
}
.l-header.scrolled {
  backdrop-filter: blur(10px);
}

.l-header__inner {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.875rem;
	height: 6.875rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-transition: background-color 0.3s ease-in-out;
	transition: background-color 0.3s ease-in-out;
	width: 100%;
  transition: height 0.3s ease-in-out;
}

.l-header.scrolled .l-header__inner {
  height: 5rem;
}

.l-header__logo {
	max-width: 19.25rem;
	padding: 2rem 2.5rem;
	width: 100%;
}

.l-header__logo-image {
	max-width: 24.8125rem;
	width: 100%;
}

.l-header__wrap {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-webkit-box-pack: end;
	-webkit-justify-content: end;
	    -ms-flex-pack: end;
	        justify-content: end;
}

.l-header__nav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	margin-right: 2.8125rem;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.l-header__nav-item-wrap {
	position: relative;
}

.l-header__nav-item {
	color: #fff;
	display: block;
	font-size: 0.9rem;
	font-weight: 600;
	padding: 0.625rem;
	position: relative;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: -moz-max-content;
	width: -webkit-max-content;
	width: max-content;
}

.l-header__nav-item:hover {
	color: #0092E5;
}

.l-header__nav-item.is-current {
	color: #0092E5;
}

.l-header__nav-item > span {
	cursor: pointer;
}

.l-header__nav-item > span.is-current {
	color: #0092E5;
}

.l-header__dropdown-menu {
	background-color: #fff;
	max-height: 0;
	overflow: hidden;
	padding: 0 1.875rem;
	position: absolute;
	-webkit-transition: max-height 0.5s ease-in-out, padding 0.5s ease-in-out;
	transition: max-height 0.5s ease-in-out, padding 0.5s ease-in-out;
	width: -moz-max-content;
	width: -webkit-max-content;
	width: max-content;
	z-index: 2001;
}

.l-header__nav-item:hover + .l-header__dropdown-menu {
	max-height: 18.75rem;
	padding: 0.9375rem 1.875rem;
}

.l-header__dropdown-menu:hover {
	max-height: 18.75rem;
	padding: 0.9375rem 1.875rem;
}

.l-header__dropdown-item {
	color: #0092E5;
}

.l-header__dropdown-item-link {
	display: block;
	font-size: 1rem;
	font-weight: 600;
	padding: 0.4375rem 0rem 0.4375rem 0.625rem;
	position: relative;
	text-decoration: none;
	-webkit-transition: background-color 0.3s, color 0.3s;
	transition: background-color 0.3s, color 0.3s;
}

.l-header__dropdown-item-link::before {
	background-color: #0092E5;
	border-radius: 50%;
	content: "";
	display: block;
	height: 0.375rem;
	left: 0;
	position: absolute;
	top: 0.9375rem;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition-duration: 0.3s;
	        transition-duration: 0.3s;
	width: 0.375rem;
	z-index: 1;
}

.l-header__dropdown-item-link:hover::before {
	-webkit-transform: translateY(-50%) scale(1.5);
	        transform: translateY(-50%) scale(1.5);
}

.l-header__dropdown-item-link.is-current {
	color: #0092E5;
}

.l-header__menu-button {
  background-color: #fff;
	height: 6.875rem;
	max-width: 6.875rem;
	position: relative;
	right: 0;
	top: 0;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	width: 100%;
	z-index: 2000;
}
.l-header.scrolled .l-header__menu-button {
  width: 5rem;
  height: 5rem;
}

.l-header__menu-button:focus {
	background-color: #fff;
}

.l-header__menu-button:hover {
	background-color: #0092E5;
}

.l-header__menu-button:hover .l-header__menu-button-line {
	background-color: #fff;
}

.l-header__menu-button:hover .l-header__menu-button-line::before,
.l-header__menu-button:hover .l-header__menu-button-line::after {
	background-color: #fff;
}

.l-header__menu-button.is-active .l-header__menu-button-line {
	background-color: transparent;
}

.l-header__menu-button.is-active .l-header__menu-button-line::before {
	top: 0;
	-webkit-transform: rotate(32deg);
	        transform: rotate(32deg);
}

.l-header__menu-button.is-active .l-header__menu-button-line::after {
	top: 0;
	-webkit-transform: rotate(-32deg);
	        transform: rotate(-32deg);
}

.l-header__menu-button-line {
	background-color: #0092E5;
	display: block;
	height: 0.125rem;
	left: 50%;
	position: relative;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	width: 2.5rem;
}

.l-header__menu-button-line::before,
.l-header__menu-button-line::after {
	background-color: #0092E5;
	content: "";
	height: 0.125rem;
	left: 0;
	position: absolute;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	width: 2.5rem;
}

.l-header__menu-button-line::before {
	bottom: 0.6875rem;
}

.l-header__menu-button-line::after {
	top: 0.6875rem;
}

.l-header__menu {
	background-color: #0092E5;
	color: white;
	height: 100vh;
	position: fixed;
	right: -100%; /* 初期状態で画面外 */
	top: 0;
	-webkit-transition: right 0.5s ease;
	transition: right 0.5s ease;
	width: 60rem;
	z-index: 1000;
}

.l-header__menu-content {
	height: 100vh;
	opacity: 0;
	overflow-y: scroll;
	padding-bottom: 3.75rem;
	padding-left: 7.1875rem;
	padding-right: 11.25rem;
	padding-top: clamp(7.5rem, 17vh, 10.3125rem);
	-webkit-transition: opacity 0.4s ease-in-out;
	transition: opacity 0.4s ease-in-out;
}

.l-header__menu-content::-webkit-scrollbar {
	display: none;
}

.l-header.menu-open .l-header__menu {
	right: 0;
}

.l-header.menu-open .l-header__menu .l-header__menu-content {
	opacity: 1;
	-webkit-transition-delay: 0.45s;
	        transition-delay: 0.45s;
}

.menu-overlay {
	background-color: rgba(0, 0, 0, 0.3);
	height: 100vh;
	left: 0;
	opacity: 0;
	position: fixed;
	top: 0;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	visibility: hidden;
	width: 100%;
	z-index: 0;
}

.l-header.menu-open .menu-overlay {
	opacity: 1;
	visibility: visible;
}

.l-header__menu-nav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: clamp(1.875rem, 6vh, 2.5rem) 0rem;
	margin-bottom: clamp(2.5rem, 8vh, 5.3125rem);
}

.l-header__nav-block {
	width: 10.3125rem;
}

.l-header__menu-logo {
	margin-bottom: clamp(3.125rem, 10vh, 9.0625rem);
	max-width: 20.625rem;
	width: 100%;
}

.l-header__nav-title {
	display: inline-block;
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 15px;
}

.l-header__nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.l-header__nav-list li {
	margin-bottom: 0.5625rem;
}

.l-header__nav-list li a {
	color: #fff;
	font-size: 0.875rem;
	padding-left: 0.8125rem;
	position: relative;
	text-decoration: none;
	-webkit-transition: color 0.3s;
	transition: color 0.3s;
}

.l-header__nav-list li a::before {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	display: block;
	height: 3px;
	left: 0.1875rem;
	position: absolute;
	top: 0.375rem;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition-duration: 0.3s;
	        transition-duration: 0.3s;
	width: 3px;
	z-index: 1;
}

.l-header__nav-list li a:hover::before {
	-webkit-transform: translateY(-50%) scale(2.5);
	        transform: translateY(-50%) scale(2.5);
}

.l-header__menu-btn-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 1.875rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.l-header__btn-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 0.625rem;
}

.l-header__sns {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.25rem;
}

.l-header__sns-item {
	display: block;
	-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
}

.l-header__sns-item:hover {
	opacity: 0.7;
	-webkit-transform: scale(1.1);
	        transform: scale(1.1);
}

.l-header .l-header__btn {
  background-color: #fff;
	border: 1px solid #fff;
  text-align: center;
	color: #0092E5;
	font-size: 1.0625rem;
	height: 3.125rem;
	margin: 0;
	width: 13.4rem;
  max-width: 13.4rem;
}
.l-header .l-header__btn.l-header__btn-ir {
  font-size: 0.8rem;
}

.l-header .l-header__btn.l-header__btn-comsys {
  transition: opacity 0.3s ease;
}
.l-header .l-header__btn.l-header__btn-comsys:hover {
  opacity: 0.7;
  background-color: #fff;
}
.l-header .l-header__btn.l-header__btn-comsys img {
  width: 100%;
  height: 95%;
  object-fit: contain;
}

.l-header .l-header__btn:hover {
	background-color: #0092E5;
	color: #fff;
}

.l-inner {
	height: inherit;
	margin: 0 auto;
	max-width: 1440px;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.l-inner-body.l-inner-body--top-mv {
	width: 100%;
}

.c-banner {
	background-color: #EAEAE9;
	width: 100%;
}

.c-banner__inner {
	padding-bottom: 6rem;
	padding-top: 6rem;
	position: relative;
	width: 88vw;
}

.c-banner__swiper-container {
  position: relative;
  margin-bottom: 1.25rem;
}
.c-banner__swiper-container:last-of-type {
  margin-bottom: 0;
}

.c-banner__list{
  /* display: flex;
  gap: 0.625rem; */
}

.c-banner__item{
  width: 25%;
}

.c-banner__swiper {
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.c-banner__inner .swiper-button-next,
.c-banner__inner .swiper-button-prev {
	background-color: #fff;
	border-radius: 50%;
	height: 2.0625rem;
	-webkit-transform: translateY(20%);
	        transform: translateY(20%);
	width: 2.0625rem;
}

.c-banner__inner .swiper-button-prev:after,
.c-banner__inner .swiper-button-prev:before {
	left: 0.5rem;
}

.c-banner__inner .swiper-button-next:after,
.c-banner__inner .swiper-button-next:before {
	right: 0.8125rem;
}

.c-banner__inner .swiper-button-next:after,
.c-banner__inner .swiper-button-next:before,
.c-banner__inner .swiper-button-prev:after,
.c-banner__inner .swiper-button-prev:before {
	background-color: #0092E5;
	border-radius: 9999px;
	color: #0092E5;
	content: "" !important;
	font-size: 0.9375rem !important;
	height: 0.125rem;
	position: absolute;
	top: calc(50% - 1px);
	-webkit-transform-origin: calc(100% - 1px) 50%;
	        transform-origin: calc(100% - 1px) 50%;
	width: 0.4375rem;
}

.c-banner__inner .swiper-button-prev::before {
	-webkit-transform: rotate(-225deg);
	        transform: rotate(-225deg);
}

.c-banner__inner .swiper-button-prev::after {
	-webkit-transform: rotate(-130deg);
	        transform: rotate(-130deg);
}

.c-banner__inner .swiper-button-next::before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.c-banner__inner .swiper-button-next::after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.c-banner .swiper-button-prev,
.c-banner .swiper-rtl .swiper-button-next {
	left: -3.75rem;
}

.c-banner .swiper-button-next,
.c-banner .swiper-rtl .swiper-button-prev {
	right: -3.75rem;
}

.c-banner .swiper-button-prev,
.c-banner .swiper-button-next {
	z-index: 1;
}

.c-news__link-arrow::before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.c-news__link-arrow::after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.c-banner__link {
	background-color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
	width: 100%;
}

.c-banner__link img {
	-o-object-fit: contain;
	background: #fff;
	height: 5.25rem;
	object-fit: contain;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.c-banner__link:hover {
	opacity: 0.7;
}

.c-btn {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 100vmax;
	color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.9375rem;
	font-size: 1.125rem;
	font-weight: 600;
	height: 3.125rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	line-height: 1.5;
	margin: 0;
	max-width: 12.5rem;
	position: relative;
	-webkit-transition: background-color 0.3s ease, color 0.3s ease;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 100%;
}

.c-btn:hover {
	background-color: #0092E5;
	color: #fff;
}

.c-btn .arrow {
	background-color: #0092E5;
	border-radius: 100vmax;
	display: block;
	height: 1rem;
	position: absolute;
	right: 1.375rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 1rem;
}

.c-btn .arrow::before,
.c-btn .arrow::after {
	background-color: #fff;
	border-radius: 9999px;
	content: "";
	height: 0.125rem;
	position: absolute;
	right: 0.25rem;
	top: calc(50% - 1px);
	-webkit-transform-origin: calc(100% - 1px) 50%;
	        transform-origin: calc(100% - 1px) 50%;
	width: 0.4375rem;
}

.c-btn .arrow::before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.c-btn .arrow::after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.c-btn.c-btn--arrow {
	border: 1px solid #0092E5;
	color: #000;
	display: block;
	font-size: 0.9375rem;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	max-width: 100%;
	padding: 1.3125rem 2.8125rem 1.3125rem 1.375rem;
}

.c-btn.c-btn--arrow:hover {
	background-color: #0092E5;
	color: #fff;
}

.c-btn.c-btn--arrow-pink,
.c-btn.c-btn--arrow-blue {
	border: 1px solid #fff;
	color: #000;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.9375rem;
	gap: 0.3125rem;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	max-width: 100%;
	padding: 1.3125rem 1.375rem 1.3125rem 1.375rem;
}

.c-btn.c-btn--arrow-pink .arrow {
	background-color: #FF6784;
	left: 0;
	position: static;
	position: initial;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

.c-btn.c-btn--arrow-blue .arrow {
	background-color: #0092E5;
	left: 0;
	position: static;
	position: initial;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

.c-btn.c-btn--arrow-pink .arrow::before,
.c-btn.c-btn--arrow-pink .arrow::after {
	background-color: #fff;
}

.c-dot {
	padding-left: 0.9375rem;
	position: relative;
}

.c-dot:before {
	background-color: #0092E5;
	border-radius: 50%;
	content: "";
	height: 0.5em;
	left: 0;
	position: absolute;
	top: 0.5em;
	width: 0.5em;
}

.c-dot__black {
	margin-left: 1.5625rem;
	padding-left: 0.9375rem;
	position: relative;
}

.c-dot__black::before {
	content: "・";
	left: 0;
	position: absolute;
	top: 0;
}

.c-dot__none {
	padding-left: 0.9375rem;
}

.c-dot__none::before {
	content: none;
}

.c-heading01__intro {
	height: 16.4375rem;
	margin-top: -2.8125rem;
	position: relative;
	text-align: justify;
}

.c-heading01__container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin: 0 auto;
	max-width: 107.5rem;
	padding: 0 1.25rem;
}

.c-heading01 {
	-webkit-font-feature-settings: normal;
	        font-feature-settings: normal;
	color: #fff;
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: -0.04em;
	line-height: 1.75;
	overflow: hidden;
	position: relative;
	text-align: justify;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	z-index: 1;
}

.c-heading02 {
	color: #0092E5;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 3.125rem;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}

.c-heading02__sub {
	display: block;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1;
	text-align: center;
}

.c-hero {
	position: relative;
}

.c-hero__text {
	left: 2.75rem;
	position: absolute;
	top: 58%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	z-index: 1;
}

.c-hero__text-image {
	margin-bottom: 1.875rem;
	width: clamp(25rem, 50vw, 52.0625rem);
}

.c-hero__text--short {
	left: 2.75rem;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: auto;
	z-index: 1;
}

.c-hero__title {
	color: #fff;
	font-size: 5.25rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 0.3125rem;
}

.c-hero__subtitle {
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.075em;
}

.c-hero__image {
	height: 52.5rem;
	position: relative;
}

.c-hero__image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
}

.c-hero__short {
	height: 26.25rem;
}

.c-hero__short img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
}

.c-loop {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.25rem;
	margin-top: 0.8125rem;
	overflow: hidden;
	white-space: nowrap;
}

.c-loop__overflow-wrap {
	margin: 0 calc(-50vw + 50%);
	width: 100vw;
}

.c-loop__item {
	-webkit-animation: scroll 30s linear infinite;
	        animation: scroll 30s linear infinite;
}

.c-loop__item-image {
	width: 190vw;
}

.c-news__inner {
	padding-bottom: 6.6875rem;
	padding-top: 6.9375rem;
}

.c-news__wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.c-news__title-wrap {
	background-color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 30rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	max-width: 30rem;
	padding: 4.125rem 4.375rem 3.875rem;
	width: 32.2vw;
}

.c-news__title {
	color: #fff;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4;
}

.c-news__sub {
	color: #fff;
	font-size: 1rem;
}

.c-news__link {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.15625rem;
	padding-left: 1.5625rem;
	position: relative;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.c-news__link:hover {
	opacity: 0.5;
}

.c-news__link-arrow {
	background-color: #fff;
	border-radius: 50%;
	display: block;
	height: 1.25rem;
	left: 0rem;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 1.25rem;
}

.c-news__link-arrow::before,
.c-news__link-arrow::after {
	background-color: #0092E5;
	border-radius: 9999px;
	content: "";
	height: 0.125rem;
	position: absolute;
	right: 0.4375rem;
	top: calc(50% - 1px);
	-webkit-transform-origin: calc(100% - 1px) 50%;
	        transform-origin: calc(100% - 1px) 50%;
	width: 0.4375rem;
}

.c-news__link-arrow::before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.c-news__link-arrow::after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.c-news__list-wrap {
	margin-left: -4.125rem;
	margin-top: 6.25rem;
	width: 66.1vw;
}

.c-news__cat-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 0.625rem;
	-webkit-box-pack: right;
	-webkit-justify-content: right;
	    -ms-flex-pack: right;
	        justify-content: right;
	margin-bottom: 2.375rem;
}

.c-news__cat-link {
	background-color: #fff;
	border: 1px solid #0092E5;
	border-radius: 1.25rem;
	color: #0092E5;
	display: inline-block;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1;
	padding: 0.3125rem 0.9375rem;
	text-align: center;
	-webkit-transition: background-color 0.3s, color 0.3s;
	transition: background-color 0.3s, color 0.3s;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.c-news__cat-link.current {
	background-color: #0092E5;
	color: #fff;
}

.c-news__cat-link:hover {
	background-color: #0092E5;
	color: #fff;
}

.c-news__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 2.5rem;
}

.c-news__item {
	background-color: #EAEAE9;
	border-radius: 3.125rem;
	-webkit-box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 0.625rem rgba(0, 0, 0, 0.1);
	overflow: hidden;
	-webkit-transition: -webkit-transform 0.3s, -webkit-box-shadow 0.3s;
	transition: -webkit-transform 0.3s, -webkit-box-shadow 0.3s;
	transition: transform 0.3s, box-shadow 0.3s;
	transition: transform 0.3s, box-shadow 0.3s, -webkit-transform 0.3s, -webkit-box-shadow 0.3s;
	width: 31%;
}

.c-news__item:hover {
	-webkit-box-shadow: 0 0 0rem rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 0rem rgba(0, 0, 0, 0.1);
	-webkit-transform: translateY(0.3125rem);
	        transform: translateY(0.3125rem);
}

.c-news__item-image img {
	-o-object-fit: cover;
	aspect-ratio: 1/1;
	object-fit: cover;
}

.c-news__item-text-wrap {
	padding: 1.375rem 1.6875rem 1.75rem;
}

.c-news__item-date-wrap {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.3125rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 1.5625rem;
}

.c-news__item-category {
	background-color: #0092E5;
	border-radius: 1.25rem;
	color: #fff;
	font-size: 0.75rem;
	font-weight: 600;
	padding: 0.3125rem 0.625rem;
	text-align: center;
	width: 7.1875rem;
}

.c-news__item-date-text {
	font-size: 0.75rem;
}

.c-news__item-head {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
}

.c-recruit {
	background-color: #EAEAE9;
}

.c-recruit__inner {
	padding-top: 3.75rem;
}

.c-recruit__head-wrap {
	margin-bottom: 4.375rem;
}

.c-recruit__group {
	background-color: #FF6784;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.c-recruit__box {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 3.75rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 1.25rem 1.875rem;
	width: 32.5rem;
}

.c-recruit__btn {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 100vmax;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 3.75rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	max-width: 23.75rem;
	-webkit-transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
	transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
	width: 100%;
}

.c-recruit__btn:hover {
	background-color: #FF6784;
	color: #fff;
}

.c-recruit__img {
	width: 80vw;
}

.c-recruit__img video {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.c-sns-nav {
	position: fixed;
	right: 0;
	top: 64.5%;
	z-index: 5;
}

.c-sns-nav__list {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: rgba(255, 255, 255, 0.5);
	border-radius: 1.6875rem 0 0 1.6875rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.3125rem;
	height: 8.75rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 2.3125rem 1.875rem;
	width: 5.3125rem;
}

.c-sns-nav__link {
	display: block;
	-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
}

.c-sns-nav__link:hover {
	opacity: 0.7;
	-webkit-transform: scale(1.1);
	        transform: scale(1.1);
}

.c-sns-nav__link.c-sns-nav__link--instagram {
	width: 1.375rem;
}

.c-sns-nav__link.c-sns-nav__link--x {
	width: 1.25rem;
}

.c-sns-nav__link.c-sns-nav__link--facebook {
	width: 0.75rem;
}

.c-sns-nav__link.c-sns-nav__link--youtube {
	width: 1.625rem;
}

.c-text__dot {
	font-size: 1rem;
	line-height: 1.75;
	padding-left: 0.9375rem;
	position: relative;
}

.c-text__dot:before {
	background-color: #0092E5;
	border-radius: 50%;
	content: "";
	height: 0.5em;
	left: 0;
	position: absolute;
	top: 0.6em;
	width: 0.5em;
}

.p-company-heading {
	margin-bottom: 3.625rem;
}

.p-company-intro__inner {
	padding-bottom: 5.625rem;
}

.p-company-intro__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 5rem 3.75rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-company-intro__left {
	max-width: 50.625rem;
	width: 59%;
}

.p-company-intro__right {
	max-width: 29.0625rem;
	width: 34%;
}

.p-company-intro__item {
	height: 100%;
}

.p-company-intro__item-title-en {
	border-bottom: 1px solid #0092E5;
	color: #0092E5;
	display: block;
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 0.625rem;
	padding-bottom: 0.3125rem;
	width: 100%;
}

.p-company-intro__item-title {
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 2.5rem;
}

.p-company-profile__table {
	border-collapse: collapse;
	width: 100%;
}

.p-company-profile__row {
	border-bottom: 1px solid #000;
	border-top: 1px solid #000;
}

.p-company-profile__header,
.p-company-profile__desc {
	font-size: 1.125rem;
	font-weight: 300;
	line-height: 1.5;
	padding: 0.25rem 0.625rem;
}

.p-company-profile__header {
	background-color: #ddd;
	color: #0092E5;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
	vertical-align: middle;
	width: 9.5625rem;
}

.p-company-profile__desc {
	padding: 0.25rem 0rem 0.25rem 1.875rem;
	text-align: justify;
}

.p-company-profile__list {
	list-style-type: none;
	padding-left: 0;
}

.p-company-intro__img {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.p-company-intro__item-lead {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.25rem;
	height: 2.5rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 0.9375rem;
	padding: 0.3125rem 0.9375rem;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.p-company-intro__list-item {
	font-size: 1.125rem;
	line-height: 1.5;
	padding-left: 0.9375rem;
	position: relative;
}

.p-company-intro__list-item {
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

.p-company-intro__list-item:hover {
	opacity: 0.7;
}

.p-company-intro__list-item::before {
	background-color: #0092E5;
	border-radius: 50%;
	color: #0092E5;
	content: "";
	height: 0.5625rem;
	left: 0;
	position: absolute;
	top: 0.5625rem;
	width: 0.5625rem;
}

.p-company-intro__annotation {
	color: #0092E5;
	font-size: 1.125rem;
	font-weight: 300;
	line-height: 1.5;
}

.p-company-base {
	background-color: #EAEAE9;
}

.p-company-base__inner {
	padding-bottom: 5.625rem;
	padding-top: 5rem;
}

.p-company-base__item-title {
	color: #0092E5;
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 0.625rem;
}

.p-company-base__head-wrap {
	margin-bottom: 3.75rem;
}

.p-company-base__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 2.3125rem 2.5rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-company-base__item {
	width: calc(50% - 1.6666666667rem);
}

.p-company-base__map-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.25rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-company-base__map-link {
	color: #0092E5;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.5;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

.p-company-base__map-link:hover {
	opacity: 0.7;
}

.p-company-base__desc {
	padding-left: 1.25rem;
}

.p-company-group__inner {
	padding-bottom: 5.625rem;
	padding-top: 5rem;
}

.p-company-group__head-wrap {
	margin-bottom: 4.375rem;
}

.p-company-group__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 2.3125rem 2.5rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-company-group__item {
	width: calc(50% - 1.6666666667rem);
}

.p-company-group__item-title {
	color: #0092E5;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 0.625rem;
}

.p-contact {
	background-color: #fff;
}

.grecaptcha-badge { visibility: hidden; }

.p-contact__inner {
	background-color: #EAEAE9;
	max-width: 105rem;
}

.p-contact__container {
	margin: 0 auto;
	max-width: 68.75rem;
	padding: 4.375rem 0;
	width: 100%;
}

.p-contact__head-wrap {
	margin-bottom: 4.25rem;
}

.p-contact__box {
	background-color: #EAEAE9;
	padding: 4.375rem 6.25rem;
	position: relative;
}

.p-contact__wrap .p-contact__note {
	display: block;
	font-size: 0.9375rem;
	font-weight: 300;
	line-height: 1.6;
	margin-top: 1.875rem;
}

.wpcf7 p {
	display: inline;
}

.contact__head::after {
	content: "";
	display: inline-block;
	height: 1.875rem;
	width: 100%;
}

.contact__lead a {
	text-decoration: underline;
}

.contact .top_disable_date,
.contact .top_visible_date {
	display: none;
}

.contact__annotation-head {
	font-size: 1.125rem;
	margin-bottom: 0.5rem;
	margin-top: 0.5rem;
}

.contact__annotation-list {
	font-size: 1rem;
	font-weight: 200;
	line-height: 1.75;
	padding: 1.25rem 0 1.875rem;
}

.p-contact__wrap .top-required,
.p-contact__wrap .required {
	background-color: #0092E5;
	border-radius: 0.3125rem;
	color: #FFF;
	font-size: 0.875rem;
	font-weight: 200;
	padding: 0.1875rem 0.5625rem;
}

.p-contact__wrap .top-required {
	margin-right: 0.125rem;
}

.p-contact__wrap .attention {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.1875rem;
}

.p-contact__wrap .p-form {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding: 1.25rem 0 0;
}

.p-contact__wrap .p-form input[type=text],
.p-contact__wrap .p-form input[type=tel],
.p-contact__wrap .p-form input[type=email] {
	width: 100%;
}

.p-contact__wrap .p-form dt {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	color: var(--dark-green);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 400;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-right: 0.9375rem;
	padding: 1rem;
	width: 18.125rem;
}

.p-contact__wrap .p-form dt.transparent-wrap {
	background-color: #fff;
}

.p-contact__wrap .p-form dt.message {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.p-contact__wrap .p-form dt > span {
	color: #000;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4375rem;
}

.p-contact__wrap .p-form dt > span.required {
	color: #FFF;
	font-size: 0.875rem;
	font-weight: 200;
	margin-left: auto;
}

.p-contact__wrap .p-form dd {
	width: calc(100% - 18.125rem - 0.9375rem);
}

.p-contact__wrap .p-form .message > span.required {
	margin: 0;
	margin-left: auto;
}

.p-contact__wrap .wpcf7-form-control-wrap {
	display: block;
	height: 100%;
	position: relative;
}

.p-contact__wrap .p-form dd .name2 {
	margin-left: 0.9375rem;
}

.p-contact__wrap .p-form dd input[type=text],
.p-contact__wrap .p-form dd input[type=tel],
.p-contact__wrap .p-form dd input[type=email],
.p-contact__wrap .p-form dd input[type=date],
.p-contact__wrap .p-form dd input[type=number],
.p-contact__wrap .p-form dd #pref,
.p-contact__wrap .p-form dd select,
.p-contact__wrap .p-form dd textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: inherit;
	background-color: #fff;
	border: none;
	border-radius: 0rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 1rem;
	font-weight: 400;
	height: 100%;
	padding: 0.9375rem 1.3125rem;
	width: 100%;
}

.p-form .job-dd .wpcf7-radio {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: inherit;
	background-color: #fff;
	border: none;
	border-radius: 0rem;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	font-size: 1rem;
	font-weight: 400;
	padding: 0.9375rem 1.3125rem;
}

.p-contact__wrap .p-form .job-dt {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.p-contact__wrap .p-form dd #pref {
	height: 100%;
	height: 3.4375rem;
	line-height: 1;
	width: 100%;
}

.p-contact__wrap .p-form dd.your-method {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.p-contact__wrap .p-form dd.your-method .method,
.p-contact__wrap .p-form dd.your-method .menu {
	height: 100%;
	width: 100%;
}

.p-contact__wrap .p-form dd .radio-wrap { /* margin-left: rem(18); */
}

/*
@include mq("md") {
	.p-contact__wrap .p-form dd .radio-wrap {
		margin-left: rem(6);
	}
}
*/

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item {
	background: #fff;
	border-radius: 1.25rem;
	height: 100%;
	margin: 0;
	width: calc(50% - 0.125rem);
}

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item.first {
	margin-right: 0.625rem;
}

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item-label {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	color: #000;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 400;
	height: 100%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

/* デフォルトのボタン */

.p-contact__wrap .p-form dd .radio-wrap input[type=radio] {
	opacity: 0; /* デフォルトのボタンを非表示 */
	position: absolute;
}

/* チェック前のボタン */

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item-label::before {
	border: 0.0625rem solid #000;
	border-radius: 100%; /* ラジオボタンっぽく丸くする */
	content: "";
	cursor: pointer; /* background: #FFF; */
	height: 1.2em;
	margin-bottom: auto;
	margin-right: 0.5em;
	margin-top: auto;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s; /* 色をじんわり変化させる */
	width: 1.2em;
}

/* チェック後のボタン */

.p-contact__wrap .p-form dd .radio-wrap input[type=radio]:checked + .wpcf7-list-item-label::before {
	background-color: #000; /* チェック後の中心の色 */
	-webkit-box-shadow: inset 0 0 0 0.1875rem #000;
	        box-shadow: inset 0 0 0 0.1875rem #000; /* 中心の色のスタイル */
}

.p-contact__wrap .p-form .your-date .date {
	min-width: 10.625rem;
	width: 41%;
}

.p-contact__wrap .p-form .your-time .time .form-time {
	width: 4.375rem;
}

.p-contact__wrap .p-form .your-time .time .time_label {
	color: #FFF;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.125rem;
	padding: 0 0.625rem;
}

.p-contact__wrap .p-form .your-address {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.p-contact__wrap .name1 {
	max-width: 26.25rem;
	width: 100%;
}

.p-contact__wrap .p-form .your-address .address {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.9375rem;
	max-width: 26.25rem;
	min-width: 8.75rem;
	width: calc(100% - 16.375rem);
}

.p-contact__wrap .p-form .your-address p {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	color: #FFF;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.p-contact__wrap .p-form .your-address #address-text {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.125rem;
	font-weight: 400;
	max-width: 16.375rem;
	width: 100%;
}

.p-contact__wrap .pp-lead {
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0.08rem;
	margin-bottom: 0.875rem;
	text-align: center;
}

.p-contact__wrap .pp-agreeBtn {
	display: block;
	font-size: 0.875rem;
	font-weight: 200;
	letter-spacing: 0.2rem;
	line-height: 1.2;
	margin-bottom: 1.875rem;
	margin-top: 3.75rem;
	text-align: center;
}

.p-contact__wrap .pp-agreeBtn input[type=checkbox] {
	opacity: 0;
	position: absolute;
}

.p-contact__wrap .pp-agreeBtn span.wpcf7-list-item {
	position: relative;
}

.p-contact__wrap .pp-agreeBtn span.wpcf7-list-item-label::before {
	border: 0.0625rem solid #231815;
	content: "";
	cursor: pointer;
	display: inline-block;
	height: 0.9375rem;
	margin-right: 0.3125rem;
	position: relative;
	text-align: center;
	top: 0.125rem;
	vertical-align: middle;
	width: 0.9375rem;
}

.p-contact__wrap .pp-agreeBtn input[type=checkbox]:checked + span.wpcf7-list-item-label::after {
	background: url(../images/common/icon_check.png) no-repeat center;
	background-size: contain;
	content: "";
	display: block;
	height: 1.0625rem;
	left: 0;
	position: absolute;
	top: 0;
	width: 1.0625rem;
}

.p-contact__wrap .pp-agreeBtn span label,
.p-contact__wrap .pp-agreeBtn span label input {
	cursor: pointer;
}

.p-contact__wrap .attention-btm {
	line-height: 1.5;
	margin: 0.625rem 0 3.125rem;
}

.p-contact__wrap .attention-btm p {
	color: #FFF;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.125rem;
}

.p-contact__wrap .contact_send_button_wrap {
	height: 5rem;
	margin: 0 auto;
	position: relative;
	width: 28.75rem;
}

.p-contact__wrap .contact_send_button {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	border: none;
	border-radius: 2.625rem;
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	color: #0092E5;
	cursor: pointer;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 600;
	height: 100%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	letter-spacing: 0.15em;
	position: relative;
	text-align: center;
	top: 0;
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
	-webkit-transition-duration: 0.3s;
	        transition-duration: 0.3s;
	width: 100%;
	z-index: 2;
}

.p-contact__wrap .contact_send_button:hover {
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	-webkit-transform: translateY(0.125rem);
	        transform: translateY(0.125rem);
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.p-contact__wrap .wpcf7-not-valid-tip {
	bottom: -1.1875rem;
	color: red;
	font-size: 0.8125rem;
	font-weight: 400;
	left: 0;
	margin-top: 0.25rem;
	position: absolute;
}

.wpcf7 form .wpcf7-response-output {
	border: 0.0625rem solid var(--dark-green);
	font-size: 1rem;
	font-weight: 400;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border: 0.0625rem solid #231815;
	color: #231815;
	font-size: 0.875rem;
	font-weight: 200;
	margin-top: 0.625rem;
	padding: 0.625rem;
}

.p-contact__wrap .p-form dd .quantity {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.p-contact__wrap .p-form dd .quantity input.wpcf7-form-control {
	width: 6.25rem;
}

.p-contact__wrap .p-form dd #quantity-label {
	color: #fff;
	display: block;
	font-size: 1rem;
	margin: auto 0;
	margin-left: 0.625rem;
}

.p-contact__wrap .p-form dd .your-datepicker {
	max-width: 25.625rem;
}

.p-contact__wrap .p-form dd .datepicker {
	position: relative;
}

.p-contact__wrap .p-form dd .address {
	margin-right: 0.9375rem;
	width: 25.625rem;
}

.p-contact__wrap .p-form dd textarea {
	height: 100%;
	width: 100%;
}

.p-contact__wrap .p-form dd input[type=radio] {
	-webkit-appearance: auto;
	-moz-appearance: auto;
	accent-color: #666;
	appearance: auto;
	cursor: pointer;
	height: 1.25rem;
	width: 1.25rem;
}

.p-contact__wrap .p-form dd select:invalid {
	color: #c0c0c0;
}

.p-form dd #pref .p-contact__wrap .p-form dd input::-moz-placeholder, .p-contact__wrap .p-form dd textarea::-moz-placeholder {
	color: #c0c0c0;
}

.p-form dd #pref .p-contact__wrap .p-form dd input::-webkit-input-placeholder, .p-contact__wrap .p-form dd textarea::-webkit-input-placeholder {
	color: #c0c0c0;
}

.p-form dd #pref .p-contact__wrap .p-form dd input:-ms-input-placeholder, .p-contact__wrap .p-form dd textarea:-ms-input-placeholder {
	color: #c0c0c0;
}

.p-form dd #pref .p-contact__wrap .p-form dd input::-ms-input-placeholder, .p-contact__wrap .p-form dd textarea::-ms-input-placeholder {
	color: #c0c0c0;
}

.p-form dd #pref .p-contact__wrap .p-form dd input::placeholder,
.p-contact__wrap .p-form dd textarea::placeholder {
	color: #c0c0c0;
}

.p-contact__wrap input[type=checkbox]:checked + .wpcf7-list-item-label:after {
	background: url(../images/common/images/icon_check.png) no-repeat center;
	background-size: contain;
	content: ""; /*チェックアイコン*/
	display: inline-block;
	height: 1.25rem;
	left: 0.1875rem;
	position: absolute;
	top: 0;
	width: 1.25rem;
}

.p-contact__desc {
	font-size: 1.21875rem;
	line-height: 1.75;
	margin-bottom: 0.5rem;
}

.p-contact__privacy {
	color: #0092E5;
	display: inline-block;
	font-size: 1.21875rem;
	margin-bottom: 45px;
	position: relative;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	-webkit-transition: all 400ms ease-in-out;
	transition: all 400ms ease-in-out;
}

.p-contact__privacy::after {
	background-color: #0092E5;
	bottom: 0rem;
	content: "";
	height: 0.0625rem;
	left: 0;
	position: absolute;
	-webkit-transition: all 400ms ease-in-out;
	transition: all 400ms ease-in-out;
	width: 0;
}

.p-contact__privacy:hover {
	color: #0092E5;
}

.p-contact__privacy:hover::after {
	width: 100%;
}

.p-form__team--small {
	font-size: 0.75rem;
}

.p-contact__wrap .p-contact__pref {
	position: relative;
	width: 100%;
}

.p-contact__wrap .p-contact__pref::before,
.p-contact__wrap .p-contact__pref::after {
	content: "";
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.p-contact__wrap .p-contact__pref::before {
	background-color: #fff;
	border-left: 0.125rem solid #F6EBE3;
	border-radius: 0 0.1875rem 0.1875rem 0;
	display: inline-block;
	height: 3.4375rem;
	right: 0;
	width: 3.4375rem;
}

.p-contact__wrap .p-contact__pref::after {
	border-bottom: 0.125rem solid #767777;
	border-right: 0.125rem solid #767777;
	height: 0.6875rem;
	position: absolute;
	right: 1.75rem;
	top: 50%;
	-webkit-transform: translate(50%, -50%) rotate(45deg);
	        transform: translate(50%, -50%) rotate(45deg);
	width: 0.6875rem;
}

.p-contact__wrap .has-free-text {
	-webkit-box-align: baseline;
	-webkit-align-items: baseline;
	    -ms-flex-align: baseline;
	        align-items: baseline;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
}

.p-contact__wrap .has-free-text > label {
	margin-right: 0;
}

.p-contact__wrap .p-form dd .has-free-text .wpcf7-free-text {
	border-bottom: 0.0625rem solid #231815;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	padding: 0 0.125rem;
	width: calc(100% - 5.625rem);
}

.contact-msg-br {
	display: block;
}

.contact-desc-br {
	display: block;
}

.screen-reader-response {
	display: none;
}

.p-contact-confirm .p-contact__wrap dd {
	background-color: #fff;
	font-size: 1rem;
	padding: 1.3125rem;
}

.p-contact-confirm .p-contact__wrap .name1 {
	max-width: none;
	width: auto;
}

.p-contact-confirm .p-contact__wrap .contact_send_button_wrap {
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 5rem;
	line-height: 5rem;
	margin-top: 4.375rem;
	padding: 0;
}

.p-contact-confirm .p-contact__wrap .contact_send_button_wrap:hover {
	color: #006CB8;
}

.p-contact-confirm .p-contact__wrap .contact_back {
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.08rem;
	margin-top: 1.5625rem;
	text-align: center;
}

.p-contact-thanks .p-contact-thanks__title {
	font-size: 1.875rem;
	margin-bottom: 3.125rem;
	text-align: center;
}

.p-contact-thanks .p-contact-thanks__desc {
	font-size: 1rem;
	line-height: 1.6;
  max-width: 35rem;
  width: 100%;
  margin: 0 auto 3.125rem;
}

.p-contact-confirm .p-contact__wrap .p-form dt.message {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-contact-confirm .p-contact__btn__wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.875rem;
	height: 5rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin: 5rem auto 0;
	max-width: 62.5rem;
	width: 70%;
}

.p-contact-confirm .p-contact__wrap .p-contact__previous {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #EFEFEF;
	border: none;
	border-radius: 2.625rem;
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	color: #231815;
	cursor: pointer;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 600;
	height: 100%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	letter-spacing: 0.15em;
	position: relative;
	text-align: center;
	top: 0;
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
	-webkit-transition-duration: 0.3s;
	        transition-duration: 0.3s;
	width: 100%;
	z-index: 2;
}

.p-contact-confirm .p-contact__wrap .p-contact__previous:hover {
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	-webkit-transform: translateY(0.125rem);
	        transform: translateY(0.125rem);
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.p-contact-confirm .p-contact__btn__wrap .p-contact__previous {
	width: 45%;
}

.p-contact-confirm .p-contact__btn__wrap .contact_send_button {
	width: 45%;
}

.p-contact-confirm .p-contact__btn__wrap .wpcf7-spinner {
	display: none;
}

.wpcf7-response-output {
	display: none;
}

.p-contact__wrap .p-contact-thanks__link__wrap {
	height: 5rem;
	margin: 0 auto;
	margin-top: 5rem;
	min-width: 18.75rem;
	position: relative;
	width: 50%;
	z-index: 0;
}

.p-contact__wrap .p-contact-thanks__link {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	border: none;
	border-radius: 2.625rem;
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 600;
	height: 100%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	letter-spacing: 0.15em;
	position: relative;
	text-align: center;
	text-decoration: none;
	top: 0;
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
	-webkit-transition-duration: 0.3s;
	        transition-duration: 0.3s;
	width: 100%;
	z-index: 2;
}

.p-contact__wrap .p-contact-thanks__link:hover {
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	-webkit-transform: translateY(0.125rem);
	        transform: translateY(0.125rem);
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.p-contact-thanks__br {
	display: block;
}

.p-contact__wrap .wpcf7-form-control.is-empty {
	color: #B4B5B5;
}

.p-contact__wrap .wpcf7-form-control option:first-child {
	color: #B4B5B5;
}

.p-contact__wrap .wpcf7-form-control option:nth-child(n+2) {
	color: #231815;
}

.p-contact-confirm .p-contact__wrap dd {
	background-color: #fff;
	font-size: 1rem;
	padding: 1.3125rem;
}

.p-contact-confirm .p-contact__wrap .name1 {
	max-width: none;
	width: auto;
}

.p-contact-confirm .p-contact__wrap .contact_send_button_wrap {
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 5rem;
	line-height: 5rem;
	margin-top: 4.375rem;
	padding: 0;
}

.p-contact-confirm .p-contact__wrap .contact_send_button_wrap:hover {
	color: #006CB8;
}

.p-contact-confirm .p-contact__wrap .contact_back {
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.08rem;
	margin-top: 1.5625rem;
	text-align: center;
}

.p-contact-thanks .p-contact-thanks__desc {
	font-size: 1rem;
	line-height: 1.6;
	margin-bottom: 3.125rem;
}

.p-contact-confirm .p-contact__wrap .p-form dt.message {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-contact-confirm .p-contact__wrap .p-contact__previous {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #EFEFEF;
	border: none;
	border-radius: 2.625rem;
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.29);
	color: #231815;
	cursor: pointer;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 600;
	height: 100%;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	letter-spacing: 0.15em;
	position: relative;
	text-align: center;
	top: 0;
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
	-webkit-transition-duration: 0.3s;
	        transition-duration: 0.3s;
	width: 100%;
	z-index: 2;
}

.p-contact-confirm .p-contact__wrap .p-contact__previous:hover {
	-webkit-box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	        box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0);
	-webkit-transform: translateY(0.125rem);
	        transform: translateY(0.125rem);
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.p-contact-confirm .p-contact__btn__wrap .p-contact__previous {
	width: 45%;
}

.p-contact-confirm .p-contact__btn__wrap .contact_send_button {
	width: 45%;
}

.p-contact-confirm .p-contact__btn__wrap .wpcf7-spinner {
	display: none;
}

.wpcf7-response-output {
	display: none;
}

.p-contact-thanks__br {
	display: block;
}

.p-contact__wrap .wpcf7-form-control.is-empty {
	color: #B4B5B5;
}

.p-contact__wrap .wpcf7-form-control option:first-child {
	color: #B4B5B5;
}

.p-contact__wrap .wpcf7-form-control option:nth-child(n+2) {
	color: #231815;
}

.p-news-archive__intro {
	height: 15.6875rem;
}

.p-news-archive__inner {
	padding-bottom: 8.125rem;
}

.p-news-archive__wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-news-archive__main {
	width: 100%;
}

.p-news-archive__side {
	width: 21.7%;
}

.p-news-archive__side-title {
	color: #666;
	font-size: 0.875rem;
	font-weight: bold;
	margin-bottom: 0.9375rem;
	text-align: right;
}

.p-news-archive__search {
	margin-bottom: 3.125rem;
}

.p-news-archive__search-form {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.p-news-archive__search-input {
	border: none;
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	font-size: 0.9375rem;
	height: 2.8125rem;
	outline: none;
	padding: 0.625rem;
}

.p-news-archive__search-button {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #888;
	border: none;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 2.8125rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 0.625rem;
	width: 2.8125rem;
}

.p-news-archive__search-button svg {
	fill: #fff;
}

.p-news-archive__categories {
	margin-bottom: 5.0625rem;
}

.p-news-archive__category-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 0.375rem;
}

.p-news-archive__category-item {
	color: #0092E5;
	text-align: center;
	width: 8.75rem;
}

.p-news-archive__category-link {
	border: 1px solid #0092E5;
	border-radius: 100vmax;
	display: block;
	font-size: 1rem;
	font-weight: bold;
	padding: 0.1875rem;
	-webkit-transition: background-color 0.3s ease, color 0.3s ease;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 100%;
}

.p-news-archive__category-link.active {
	background-color: #0092E5;
	color: #fff;
}

.p-news-archive__category-link:hover {
	background-color: #0092E5;
	color: #fff;
}

.p-news-archive__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 0rem 4.1875rem;
	position: relative;
	width: 100%;
}

.p-news-archive__group-bg {
	background-color: #EAEAE9;
	height: 18.75rem;
	left: 0;
	margin: 0 calc(50% - 50vw);
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 100vw;
	z-index: -1;
}

.p-news-archive__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 3.75rem 0rem;
	margin-bottom: 5rem;
}

.p-news-archive__item {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	border-bottom: 1px solid #D0CECA;
	border-radius: 3.125rem;
	-webkit-box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.25);
	        box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.25);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	overflow: hidden;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
	-webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
	transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
	width: calc(25% - 3.1407035176rem);
}

.p-news-archive__item:hover {
	-webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
	        box-shadow: 0 0 0 rgba(0, 0, 0, 0);
	-webkit-transform: translateY(0.3125rem);
	        transform: translateY(0.3125rem);
}

.p-news-archive__link {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 100%;
	position: relative;
	width: 100%;
}

.p-news-archive__meta {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 0.625rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 1.5625rem;
}

.p-news-archive__category {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	border-radius: 100vmax;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.75rem;
	height: 1.5625rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	width: 6.875rem;
}

.p-news-archive__date {
	font-size: 0.75rem;
	font-weight: 600;
}

.p-news-archive__title {
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.4;
	text-align: justify;
}

.p-news-archive__thumbnail img {
	-o-object-fit: cover;
	aspect-ratio: 1/1;
	object-fit: cover;
}

.p-news-archive__content {
	background-color: #fff;
	height: 100%;
	padding: 1.625rem 1.875rem;
}

.p-news-archive__pagination {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.p-news-archive__pagination .nav-links {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
}

.p-news-archive__pagination .page-numbers {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 1.125rem;
	font-weight: 600;
	height: 3.375rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 3.375rem;
}

.p-news-archive__pagination .page-numbers:hover {
	background-color: #0092E5;
	color: #fff;
}

.p-news-archive__pagination .page-numbers.current {
	background-color: #0092E5;
	color: #fff;
	pointer-events: none;
}

.p-news-archive__pagination .page-numbers.prev,
.p-news-archive__pagination .page-numbers.next {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 3.375rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 3.375rem;
}

.p-news-archive__pagination .page-numbers.prev svg,
.p-news-archive__pagination .page-numbers.next svg {
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 0.625rem;
}

.p-news-archive__pagination .page-numbers.prev:hover,
.p-news-archive__pagination .page-numbers.next:hover {
	background-color: #fff;
}

.p-news-archive__pagination .page-numbers.prev:hover svg,
.p-news-archive__pagination .page-numbers.next:hover svg {
	fill: #0092E5;
}

.p-news-archive__pagination .page-numbers.dots {
	background: none;
	pointer-events: none;
	width: 1.9375rem;
}

.p-news-archive__pagination .page-numbers i {
	font-size: 1rem;
}

.p-news-single__inner {
	background-color: #EAEAE9;
	max-width: 105rem;
}

.p-news-single__container {
	margin: 0 auto;
	max-width: 87.5rem;
	padding-bottom: 8.125rem;
	padding-top: 4.375rem;
}

.p-news-single__wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-news-single__main {
	width: 70%;
}

.p-news-single__article {
	border-bottom: 1px solid #D0CECA;
}

.p-news-single__head-wrap {
	margin-bottom: 4.6875rem;
}

.p-news-single__top {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 0.9375rem;
}

.p-news-single__category {
	background-color: #0092E5;
	border-radius: 100vmax;
	color: #fff;
	padding: 0.1875rem;
	text-align: center;
	-webkit-transition: background-color 0.3s ease, color 0.3s ease;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 6.875rem;
}

.p-news-single__category:hover {
	background-color: #0092E5;
	color: #fff;
}

.p-news-single__date {
	font-size: 0.75rem;
	margin-left: auto;
}

.p-news-single__title {
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.5;
}

.p-news-single__image {
	margin-bottom: 2rem;
}

.p-news-single__content {
	margin-bottom: 3.75rem;
}

.p-news-single__content h2,
.p-news-single__content h3,
.p-news-single__content h4 {
	font-weight: 600;
	line-height: 1.5;
	margin: 1.875rem 0;
}

.p-news-single__content h2 {
	border-bottom: 0.125rem solid #0092E5;
	font-size: 1.5rem;
	padding: 1.0625rem 0;
}

.p-news-single__content h3 {
	background-color: #F8E69D;
	font-size: 1.25rem;
	padding: 1.875rem;
}

.p-news-single__content h4 {
	font-size: 1.25rem;
	padding: 0.625rem 1.25rem 0.625rem 1.75rem;
	padding-left: 1.75rem;
	position: relative;
}

.p-news-single__content h4::before {
	background-color: #0092E5;
	border-radius: 4px;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 0.25rem;
}

.p-news-single__content p {
	font-size: 0.9375rem;
	line-height: 2;
	margin: 0.9375rem 0;
}

.p-news-single__content a {
	text-decoration: underline;
}

.p-news-single__content ol {
	counter-reset: custom-counter;
	font-size: 0.9375rem;
	line-height: 2;
	margin: 1.875rem 0;
}

.p-news-single__content ol li {
	list-style: none;
	padding-left: 1.25rem;
	position: relative;
}

.p-news-single__content ol li:before {
	content: "❶";
	counter-increment: custom-counter;
	font-size: 0.9375rem;
	left: 0;
	position: absolute;
	top: 0;
}

.p-news-single__content ul {
	font-size: 0.9375rem;
	line-height: 2;
	margin: 1.875rem 0;
	padding-left: 1.25rem;
}

.p-news-single__content ul li {
	list-style-type: disc;
}

.p-news-single__content blockquote {
	background-color: #fff;
	border-radius: 1.25rem;
	font-size: 0.8125rem;
	line-height: 1.8;
	margin: 1.875rem 0;
	margin-left: 3.125rem;
	padding: 1.875rem;
	position: relative;
}

.p-news-single__content blockquote::before {
	color: #0092E5;
	content: "“";
	font-size: 3.125rem;
	left: -3.125rem;
	line-height: 1;
	position: absolute;
	top: 0;
}

.p-news-single__content blockquote p {
	margin: 0;
}

.p-news-single__share {
	margin-bottom: 3.75rem;
	text-align: center;
}

.p-news-single__share p {
	font-size: 0.9375rem;
	font-weight: 600;
	margin-bottom: 2.25rem;
}

.p-news-single__navigation {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-top: 50px;
	position: relative;
}

.p-news-archive__pagination .page-numbers.prev,
.p-news-archive__pagination .page-numbers.next {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 3.375rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 3.375rem;
}

.p-news-archive__pagination .page-numbers.prev svg,
.p-news-archive__pagination .page-numbers.next svg {
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 0.625rem;
}

.p-news-archive__pagination .page-numbers.prev:hover,
.p-news-archive__pagination .page-numbers.next:hover {
	background-color: #fff;
}

.p-news-archive__pagination .page-numbers.prev:hover svg,
.p-news-archive__pagination .page-numbers.next:hover svg {
	fill: #0092E5;
}

.p-news-single__prev a,
.p-news-single__next a {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 3.375rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 3.375rem;
}

.p-news-single__prev svg,
.p-news-single__next svg {
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 0.625rem;
}

.p-news-single__prev a:hover,
.p-news-single__next a:hover {
	background-color: #fff;
}

.p-news-single__prev a:hover svg,
.p-news-single__next a:hover svg {
	fill: #0092E5;
}

.p-news-single__home {
	left: 50%;
	position: relative;
	top: 0;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
}

.p-news-single__home a {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	border-radius: 3.375rem;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.9375rem;
	font-weight: 600;
	height: 3.375rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 1rem 0.625rem;
	text-align: center;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	width: 12.5rem;
}

.p-news-single__home a:hover {
	background-color: #fff;
	color: #0092E5;
}

.p-news-side {
	width: 21.7%;
}

.p-news-side__title {
	color: #0092E5;
	font-size: 0.875rem;
	font-weight: bold;
	margin-bottom: 0.9375rem;
	text-align: right;
}

.p-news-side__search {
	margin-bottom: 3.125rem;
}

.p-news-side__search-form {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.p-news-side__search-input {
	border: none;
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	font-size: 0.9375rem;
	height: 2.8125rem;
	outline: none;
	padding: 0.625rem;
}

.p-news-side__search-button {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #888;
	border: none;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 2.8125rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 0.625rem;
	width: 2.8125rem;
}

.p-news-side__search-button svg {
	fill: #fff;
}

.p-news-side__recent {
	margin-bottom: 5.0625rem;
}

.p-news-side__recent-list {
	margin-bottom: 5.0625rem;
}

.p-news-side__recent-item {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 0.9375rem;
	text-align: right;
}

.p-news-side__categories {
	margin-bottom: 5.0625rem;
}

.p-news-side__category-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.625rem;
	-webkit-box-pack: end;
	-webkit-justify-content: end;
	    -ms-flex-pack: end;
	        justify-content: end;
}

.p-news-side__category-item {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: right;
	-webkit-transition: background-color 0.3s ease, color 0.3s ease;
	transition: background-color 0.3s ease, color 0.3s ease;
}

.p-news-side__category-link {
	font-size: 1rem;
	font-weight: 600;
}

.p-news-side__category-link:hover {
	opacity: 0.7;
}

.p-news-side__archive-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.625rem;
}

.p-news-side__archive-item {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: right;
}

.p-privacy {
	width: 100%;
}

.p-privacy__inner {
	max-width: 107.5rem;
}

.p-privacy__wrap {
	background-color: #EAEAE9;
	padding: 4.375rem 8.75rem 0rem;
	position: relative;
}

.p-privacy__head-wrap {
	margin-bottom: 4.6875rem;
}

.p-privacy__box {
	background-color: #fff;
	max-width: 87.5rem;
	padding: 4.6875rem 6.25rem;
}

.p-privacy__desc {
	font-size: 1.125rem;
	line-height: 1.8;
	text-align: justify;
}

.p-privacy__second-title {
	color: #0092E5;
	font-size: 1.8125rem;
	font-weight: bold;
	margin: 5.3125rem auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.p-privacy__box-group {
	margin-bottom: 1.5625rem;
	padding: 0 3.125rem;
}

.p-privacy__box-lead {
	color: #0092E5;
	font-size: 1.25rem;
	font-weight: bold;
}

.p-privacy__box-title-wrap {
	margin-bottom: 3.4375rem;
}

.p-privacy__box-title {
	color: #0092E5;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 1.875rem;
}

.p-privacy__box-container {
	margin-bottom: 3.4375rem;
}

.p-privacy__box-lead {
	color: #0092E5;
	font-size: 1.4375rem;
	font-weight: bold;
	margin-bottom: 1.25rem;
}

.p-privacy__box-info-wrap {
	margin: 0 auto;
	max-width: 67.5rem;
	text-align: right;
}

.p-service-intro__container {
	background-color: #0092E5;
	position: relative;
}

.p-service-intro__inner {
	margin: 0 auto;
	max-width: 87.5rem;
	padding-bottom: 4.6875rem;
	padding-top: 4.6875rem;
}

.p-service-intro__text {
	color: #fff;
	font-size: 1.25rem;
	line-height: 2.1;
	max-width: 35.625rem;
	text-align: justify;
	width: 48vw;
}

.p-service-intro__image {
  bottom: clamp(3.125rem, -4vw, 0rem);
	max-width: 39.0625rem;
	position: absolute;
	right: 6vw;
	width: clamp(25rem, 40vw, 45rem);
}
.p-service-intro__image img {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ====================================
# concept
==================================== */

.p-service-concept__inner {
	padding-bottom: 14.5rem;
	padding-top: 7.8125rem;
}

.p-service-concept__title-wrap {
	margin-bottom: 4.375rem;
}

.p-service-concept__container {
	background-color: #EAEAE9;
	margin: 0 calc(50% - 50vw);
	padding: 5.625rem 0;
	position: relative;
	width: 100vw;
}

.p-service-concept__container-inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.p-service-concept .p-service-concept__head-wrap {
	height: auto;
	margin-top: 0;
}

.p-service-concept__text {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 233%;
	margin-top: 2.5rem;
	max-width: 35.625rem;
	width: 100%;
}

.p-service-concept__list {
	bottom: 27.4vw;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	right: 0;
}

.p-service-concept__item {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 23.75rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 5rem 6.5625rem 5rem 6.25rem;
	position: absolute;
	width: 23.75rem;
}

.p-service-concept__item:nth-of-type(1) {
	background: url(../images/service/concept_bg01.png) no-repeat center center/contain;
	right: 41rem;
	top: 13.75rem;
}

.p-service-concept__item:nth-of-type(2) {
	background: url(../images/service/concept_bg02.png) no-repeat center center/contain;
	right: 23.875rem;
	top: -3.6875rem;
}

.p-service-concept__item:nth-of-type(3) {
	background: url(../images/service/concept_bg03.png) no-repeat center center/contain;
	right: 6.625rem;
	top: 13.75rem;
}

.p-service-concept__image {
	bottom: -34.3vw;
	position: absolute;
	right: 4.5vw;
	width: 49.8vw;
}

.p-service-concept__item-image {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 5rem;
	margin: auto;
}

.p-service-concept__item:nth-of-type(1) .p-service-concept__item-image {
	width: 3.125rem;
}

.p-service-concept__item:nth-of-type(2) .p-service-concept__item-image {
	width: 4.375rem;
}

.p-service-concept__item:nth-of-type(3) .p-service-concept__item-image {
	width: 3.25rem;
}

.p-service-concept__item-title {
	font-size: 1.625rem;
	line-height: 1.4;
	max-width: 35.625rem;
	text-align: center;
	width: 100%;
}

.p-service-concept__item-text {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	font-size: 1rem;
	line-height: 1.4;
	max-width: 35.625rem;
	text-align: justify;
	width: 100%;
}

/* ====================================
# career
==================================== */

.p-service-career__list-container {
	-ms-overflow-style: none;
	overflow: scroll;
	scrollbar-width: none;
}

.p-service-career__list-container::-webkit-scrollbar {
	display: none;
}

.p-service-career__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.3125rem;
	margin-bottom: 4.375rem;
}

.p-service-career__item {
	width: 33.333%;
}

.p-service-career__item .p-service-career__item-title {
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

.p-service-career__item:hover .p-service-career__item-title {
	opacity: 0.5;
}

.p-service-career__item:nth-of-type(1) .p-service-career__item-title {
	background-color: #EA7435;
}

.p-service-career__item:nth-of-type(2) .p-service-career__item-title {
	background-color: #0092E5;
}

.p-service-career__item:nth-of-type(3) .p-service-career__item-title {
	background-color: #3AA528;
}

.p-service-career__item:nth-of-type(1) .p-service-career__item-title::before {
	border-top: 1.25rem solid #EA7435;
}

.p-service-career__item:nth-of-type(2) .p-service-career__item-title::before {
	border-top: 1.25rem solid #0092E5;
}

.p-service-career__item:nth-of-type(3) .p-service-career__item-title::before {
	border-top: 1.25rem solid #3AA528;
}

.p-service-career__item-image {
	-o-object-fit: cover;
	height: 6.25rem;
	object-fit: cover;
}

.p-service-career__item-image img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.p-service-career__item-title {
	color: #fff;
	font-size: 1.875rem;
	padding: 2.0625rem 3.125rem;
	position: relative;
	text-align: center;
}

.current .p-service-career__item-title::before {
	border-bottom: 0;
	border-left: 1.25rem solid transparent;
	border-right: 1.25rem solid transparent;
	border-style: solid;
	bottom: -1.1875rem;
	content: "";
	height: 0;
	left: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	width: 0;
}

.current .p-service-career__item-title {
	opacity: 0.5;
}

.p-service-career__title {
	text-stroke: 0.125rem #0092E5;
	-webkit-text-stroke: 0.125rem #0092E5;
	color: transparent;
	font-size: 6.75rem;
	font-weight: bold;
	margin-bottom: 2.5rem;
	margin-left: 5vw;
}

.social-it-business .p-service-career__title {
	text-stroke: 0.125rem #0092E5;
	-webkit-text-stroke: 0.125rem #0092E5;
}

.career .p-service-career__title {
	text-stroke: 0.125rem #EA7435;
	-webkit-text-stroke: 0.125rem #EA7435;
}

.social-infrastructure .p-service-career__title {
	text-stroke: 0.125rem #3AA528;
	-webkit-text-stroke: 0.125rem #3AA528;
}

.p-service-career__container {
	background-color: rgba(0, 146, 230, 0.15);
	padding: 4.25rem 0 0rem;
	position: relative;
}

.social-it-business .p-service-career__container {
	background-color: rgba(0, 146, 229, 0.15);
}

.career .p-service-career__container {
	background-color: rgba(234, 116, 53, 0.15);
}

.social-infrastructure .p-service-career__container {
	background-color: rgba(58, 165, 40, 0.15);
}

.p-service-career__head-wrap {
	margin: 0 calc(50% - 50vw);
	margin-bottom: 3.5rem;
	width: 100vw;
}

.p-service-career__head {
	position: relative;
	z-index: 1;
}

.social-it-business .c-heading-anime__text {
	background-color: #0092E5;
}

.career .c-heading-anime__text {
	background-color: #EA7435;
}

.social-infrastructure .c-heading-anime__text {
	background-color: #3AA528;
}

.p-service-career__text {
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 2.1;
	margin-bottom: 5rem;
	max-width: 35.625rem;
	text-align: justify;
	width: 37vw;
}

.p-service-career__image {
	border-radius: 0 0 0 16vw;
	max-width: 62.5rem;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: clamp(-5.3125rem, -3vw, -1.25rem);
	width: 55vw;
}

.p-service-career__wrap {
	grid-gap: 3.75rem 1.875rem;
	display: -ms-grid;
	display: grid;
	gap: 3.75rem 1.875rem;
	grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
	margin: 0 calc(50% - 50vw);
	margin-bottom: 6.25rem;
	padding: 0 clamp(1.25rem, 1.6vw, 3.4375rem);
	width: 100vw;
}

.p-service-career__wrap-3 {
	grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
	margin: 0;
	margin-bottom: 6.25rem;
	padding: 0;
	width: 100%;
}

.p-service-career__box {
	grid-gap: 1rem;
	display: -ms-grid;
	display: grid;
	gap: 1rem;
	-ms-grid-row-span: 4;
	grid-row: span 4;
	-ms-grid-rows: subgrid;
	grid-template-rows: subgrid;
	width: 100%;
}

.p-service-career__box-tab {
	background-color: #0092E5;
	color: #fff;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
	margin-right: 2.5rem;
	max-width: -moz-fit-content;
	max-width: -webkit-fit-content;
	max-width: fit-content;
	min-width: 15.625rem;
	padding: 0.6875rem 0.625rem;
	position: relative;
	width: 100%;
}

.social-it-business .p-service-career__box-tab {
	background-color: #0092E5;
}

.career .p-service-career__box-tab {
	background-color: #EA7435;
}

.social-infrastructure .p-service-career__box-tab {
	background-color: #3AA528;
}

.social-it-business .p-service-career__box-list-number {
	color: #0092E5;
}

.career .p-service-career__box-list-number {
	color: #EA7435;
}

.social-infrastructure .p-service-career__box-list-number {
	color: #3AA528;
}

.social-it-business .p-service-career__box-list-job {
	color: #0092E5;
}

.career .p-service-career__box-list-job {
	color: #EA7435;
}

.social-infrastructure .p-service-career__box-list-job {
	color: #3AA528;
}

.social-it-business .p-service-career__box-list-cat {
	color: #0092E5;
}

.career .p-service-career__box-list-cat {
	color: #EA7435;
}

.social-infrastructure .p-service-career__box-list-cat {
	color: #3AA528;
}

.social-it-business .p-service-career__box-list-link-text {
	background-color: #0092E5;
}

.career .p-service-career__box-list-link-text {
	background-color: #EA7435;
}

.social-infrastructure .p-service-career__box-list-link-text {
	background-color: #3AA528;
}

.social-it-business .p-service-career__box-list-arrow path {
	stroke: #0092E5;
}

.career .p-service-career__box-list-arrow path {
	stroke: #EA7435;
}

.social-infrastructure .p-service-career__box-list-arrow path {
	stroke: #3AA528;
}

.p-service-career__box-tab::before {
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 100%);
	background-color: #0092E5;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	right: -2.4375rem;
	top: 0;
	width: 2.5rem;
}

.social-it-business .p-service-career__box-tab::before {
	background-color: #0092E5;
}

.career .p-service-career__box-tab::before {
	background-color: #EA7435;
}

.social-infrastructure .p-service-career__box-tab::before {
	background-color: #3AA528;
}

.p-service-career__box-image {
	width: 100%;
}

.p-service-career__box-image img {
	aspect-ratio: 430/340;
	width: 100%;
}

.p-service-career__box-title {
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.4;
	max-width: 35.625rem;
	text-align: left;
	width: 100%;
}

.p-service-career__box-text {
	font-size: 1rem;
	line-height: 1.75;
	text-align: justify;
}

.p-service-career__box-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.125rem;
}

.p-service-career__box-list-top {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.4375rem;
}

.p-service-career__box-list-meta {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-service-career__box-list-link {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	padding: 0.3125rem 3.4375rem 0.3125rem 0rem;
	position: relative;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

.p-service-career__box-list-link:hover {
	opacity: 0.5;
}

.p-service-career__box-list-link-text {
	background-color: #0092E5;
	border-radius: 0 100vmax 100vmax 0;
	color: #fff;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	padding: 0.625rem;
	width: 100%;
}

.p-service-career__box-list-number {
	color: #0092E5;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 3rem;
	font-weight: 600;
	line-height: 1;
}

.p-service-career__box-list-job {
	color: #0092E5;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 0.875rem;
	font-weight: bold;
	font-weight: 600;
	line-height: 1.3;
}

.p-service-career__box-list-cat {
	color: #0092E5;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.p-service-career__box-list-arrow {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
	position: absolute;
	right: 1.25rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

/* ====================================
# works
==================================== */

.p-service-works__inner {
	padding-bottom: 4.375rem;
	padding-top: 4.375rem;
}

.p-service-works__title-wrap {
	margin-bottom: 5.3125rem;
}

.p-service-works__container {
	position: relative;
}

.p-service-works__cards {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.swiper-works {
	overflow: hidden;
}

.p-service-works__container .swiper-button-next,
.p-service-works__container .swiper-button-prev {
	height: 3.75rem;
}

.p-service-works__container .swiper-button-prev:after,
.p-service-works__container .swiper-button-prev:before {
	left: 2.5rem;
}

.p-service-works__container .swiper-button-next:after,
.p-service-works__container .swiper-button-next:before {
	right: 0.625rem;
}

.p-service-works__container .swiper-button-next:after,
.p-service-works__container .swiper-button-next:before,
.p-service-works__container .swiper-button-prev:after,
.p-service-works__container .swiper-button-prev:before {
	background-color: #0092E5;
	border-radius: 9999px;
	color: #0092E5;
	content: "" !important;
	height: 2.1875rem;
	position: absolute;
	top: calc(50% - 1.25rem);
	-webkit-transform-origin: calc(100% - 1.09375rem) 50%;
	        transform-origin: calc(100% - 1.09375rem) 50%;
	width: 0.125rem;
}

.p-service-works__container .swiper-button-prev::before {
	-webkit-transform: rotate(-225deg);
	        transform: rotate(-225deg);
}

.p-service-works__container .swiper-button-prev::after {
	-webkit-transform: rotate(-135deg);
	        transform: rotate(-135deg);
}

.p-service-works__container .swiper-button-next::before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.p-service-works__container .swiper-button-next::after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.p-service-works__container .swiper-button-prev,
.p-service-works__container .swiper-rtl .swiper-button-next {
	left: -7.5vw;
	top: 45%;
}

.p-service-works__container .swiper-button-next,
.p-service-works__container .swiper-rtl .swiper-button-prev {
	right: -9.375rem;
	right: -7.5vw;
	top: 45%;
}

.p-service-works__card {
	width: 100%;
}

.p-service-works__card-image {
	margin-bottom: 0.875rem;
}

.p-service-works__card-category {
	background-color: #0092E5;
	border-radius: 0 100vmax 100vmax 0;
	color: #fff;
	font-size: 1rem;
	line-height: 1.3;
	margin-bottom: 0.625rem;
	padding: 0.8125rem;
	width: 13.125rem;
}

.p-service-works__card-title {
	font-size: 1.625rem;
	line-height: 1.4;
	margin-bottom: 0.3125rem;
	max-width: 35.625rem;
	width: 100%;
}

.p-service-works__card-text {
	font-size: 1rem;
	line-height: 1.75;
	max-width: 35.625rem;
	width: 100%;
}

main#sustainability {
	overflow: hidden;
}

.p-sustainability-list__number-wrap {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	left: -8.125rem;
	position: absolute;
	top: 7.5rem;
}

.p-sustainability-list__number-cat {
	color: #0092E5;
	font-size: 0.875rem;
}

.p-sustainability-list__number {
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 4rem;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

.p-sustainability-list__number-icon {
	width: 5.25rem;
}

.p-sustainability-local .p-sustainability-list__number-icon {
	width: 5.25rem;
}

.p-sustainability-human .p-sustainability-list__number-icon {
	width: 8rem;
}

.p-sustainability-safety .p-sustainability-list__number-icon {
	width: 8.25rem;
}

.p-sustainability-environment .p-sustainability-list__number-icon {
	width: 7.3125rem;
}

.p-sustainability-ease .p-sustainability-list__number-icon {
	width: 7.0625rem;
}

.p-sustainability-corporate .p-sustainability-list__number-icon {
	width: 7.375rem;
}

.p-sustainability-intro__wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 3.75rem;
}

.p-sustainability-intro__left {
	background-color: #0092E5;
	margin-left: calc(50% - 50vw);
	padding: 4.375rem 4.125rem 4.375rem calc(50vw - 50%);
}

.p-sustainability-intro__right {
	margin-right: calc(50% - 50vw);
	padding: 0rem calc(50vw - 50%) 0rem 0rem;
}

.p-sustainability-intro__desc {
	color: #fff;
	font-size: 1.25rem;
	line-height: 2.1;
	max-width: 21.1875rem;
	text-align: justify;
	width: 100%;
}

.p-sustainability-intro__item {
	margin-bottom: 2rem;
}

.p-sustainability-intro__item:last-of-type {
	margin-bottom: 1.125rem;
}

.p-sustainability-intro__item-date {
	color: #0092E5;
	display: block;
	font-family: "roboto", sans-serif;
	font-size: 0.75rem;
	margin-bottom: 0.9375rem;
	padding-bottom: 0.5rem;
	position: relative;
	width: 100%;
}

.p-sustainability-intro__item-date::before {
	background-color: #0092E5;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100vw;
}

.p-sustainability-intro__item .p-sustainability-intro__link {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 3.75rem;
	max-width: 12rem;
}

.p-sustainability-intro__item-title {
	font-size: 1.625rem;
	font-weight: 600;
	margin-bottom: 0.625rem;
}

.p-sustainability-intro__item-desc {
	font-size: 1.125rem;
	line-height: 1.5;
	margin-bottom: 0.3125rem;
}

/* ====================================
# list section
==================================== */

.p-sustainability-list {
	background-color: #fff;
}

.p-sustainability-list:nth-of-type(odd) {
	background-color: #fff;
}

.p-sustainability-list:nth-of-type(even) {
	background-color: rgba(0, 146, 229, 0.15);
}

.p-sustainability-list__inner {
	padding-bottom: 7.5rem;
	padding-top: 7.5rem;
	position: relative;
}

.p-sustainability-list__inner::before {
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.p-sustainability-list__head {
	color: #0092E5;
	font-size: 2.5rem;
	font-weight: 600;
	margin-bottom: 0.1875rem;
}

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

/* ====================================
# local
==================================== */

.p-sustainability-local__list {
	grid-column-gap: 2.5rem;
	grid-row-gap: 2.5rem;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
	-ms-grid-rows: (1fr)[2];
	grid-template-rows: repeat(2, 1fr);
}

.p-sustainability-local__item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-sustainability-local__item:nth-of-type(1) {
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 1/1/3/2;
}

.p-sustainability-local__item:nth-of-type(2) {
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-area: 1/2/3/3;
}

.p-sustainability-local__item:nth-of-type(3) {
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	-ms-grid-column: 3;
	-ms-grid-column-span: 1;
	grid-area: 1/3/3/4;
}

.p-sustainability-local__item:nth-of-type(4) {
	-ms-grid-row: 3;
	-ms-grid-row-span: 1;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 3/1/4/2;
}

.p-sustainability-local__item:nth-of-type(5) {
	-ms-grid-row: 3;
	-ms-grid-row-span: 1;
	-ms-grid-column: 2;
	-ms-grid-column-span: 2;
	grid-area: 3/2/4/4;
}

.p-sustainability-local__item-image img {
	-o-object-fit: cover;
	aspect-ratio: 440/300;
	object-fit: cover;
}

.p-sustainability-local__item-image-caption {
	font-size: 0.875rem;
	line-height: 1.42;
	margin-bottom: 0.625rem;
}

.p-sustainability-local__item-title {
	background-color: #EAEAE9;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 120%;
	margin-bottom: 0.625rem;
	padding: 0.9375rem 1.5625rem;
}

.p-sustainability-local__item-sub {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.6;
	padding: 0rem 1.5625rem;
	text-align: justify;
}

.p-sustainability-local__item-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	padding: 0rem 1.5625rem;
}

.p-sustainability-local__item-list-item {
	font-size: 1.125rem;
	line-height: 1.5;
	text-align: justify;
}

/* ====================================
# human
==================================== */

.p-sustainability-human__image-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 2rem;
	margin-bottom: 1.5625rem;
}

.p-sustainability-human__lead {
	margin-bottom: 1.5625rem;
}

.p-sustainability-human__text {
	font-size: 1rem;
	line-height: 1.75;
	margin-bottom: 2.5rem;
	text-align: justify;
}

.p-sustainability-human__image-item-caption {
	font-size: 0.875rem;
	line-height: 1.42;
}

.p-sustainability-human__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 2rem;
}

.p-sustainability-human__item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1rem;
}

.p-sustainability-human__card-wrap {
	grid-gap: 2rem;
	display: -ms-grid;
	display: grid;
	gap: 2rem;
	grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
}

.p-sustainability-human__card {
	grid-gap: 0;
	display: -ms-grid;
	display: grid;
	gap: 0;
	-ms-grid-row-span: 3;
	grid-row: span 3;
	-ms-grid-rows: subgrid;
	grid-template-rows: subgrid;
}

.p-sustainability-human__card-top {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-sustainability-human__card-tab {
	background-color: #0092E5;
	color: #fff;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 1.25rem;
	font-weight: bold;
	margin-right: 2.5rem;
	max-width: 13.125rem;
	padding: 0.5rem 0.625rem;
	position: relative;
	width: 100%;
}

.p-sustainability-human__card-tab::before {
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 100%);
	background-color: #0092E5;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	right: -2.4375rem;
	top: 0;
	width: 2.5rem;
}

.p-sustainability-human__card-number {
	color: #0092E5;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1;
}

.p-sustainability-human__card-title {
	background-color: #fff;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 0.3125rem;
	padding: 1.25rem 1.5625rem;
}

.p-sustainability-human__card-bottom-text {
	background-color: #fff;
	font-size: 1rem;
	line-height: 1.75;
	padding: 1.25rem 1.5625rem;
	text-align: justify;
}

/* ====================================
# safety
==================================== */

.p-sustainability-safety__lead {
	margin-bottom: 1.5625rem;
}

.p-sustainability-safety__text-wrap {
	margin-bottom: 2.375rem;
}

.p-sustainability-safety__subtitle {
	color: #0092E5;
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 0.9375rem;
	margin-bottom: 0.9375rem;
	overflow: hidden;
	padding-bottom: 0.4375rem;
	padding-bottom: 0.5rem;
	position: relative;
}

.p-sustainability-safety__subtitle::before {
	background-color: #000;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100vw;
}

.p-sustainability-safety__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.375rem;
	margin-bottom: 2.5rem;
}

.p-sustainability-safety__item {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.75rem;
}

.p-sustainability-safety__item-title {
	background-color: #0092E5;
	border-radius: 100vmax;
	color: #fff;
	font-size: 1rem;
	font-weight: 600;
	padding: 0.5625rem 0.9375rem;
	text-align: center;
	width: 12.875rem;
}

.p-sustainability-safety__item-text {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	font-size: 1rem;
	line-height: 1.5;
}

.p-sustainability-safety__card-wrap {
	grid-gap: 0.75rem;
	display: -ms-grid;
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	margin-left: calc(50% - 50vw);
	margin-right: calc(50vw - 50%);
	padding: 0 3.75rem;
	width: 100vw;
}

.p-sustainability-safety__card {
	display: -ms-grid;
	display: grid;
	-ms-grid-row-span: 3;
	grid-row: span 3;
	-ms-grid-rows: subgrid;
	grid-template-rows: subgrid;
}

.p-sustainability-safety__card-title {
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 150%;
}

.p-sustainability-safety__card-title-sub {
	font-size: 1.25rem;
	font-weight: 300;
}

.p-sustainability-safety__card-box {
	background-color: #EAEAE9;
	padding: 1.25rem;
}

.p-sustainability-safety__card-box-item {
	font-size: 1rem;
	font-weight: 300;
	line-height: 175%;
	text-align: justify;
}

.p-sustainability-safety__card-box-item-number {
	padding-left: 1.25rem;
	position: relative;
}

.p-sustainability-safety__card-box-item-number:nth-of-type(1)::before {
	color: #0092E5;
	content: "❶";
	font-weight: 700;
	left: 0;
	position: absolute;
	top: 0;
}

.p-sustainability-safety__card-box-item-number:nth-of-type(2)::before {
	color: #0092E5;
	content: "❷";
	font-weight: 700;
	left: 0;
	position: absolute;
	top: 0;
}

.p-sustainability-safety__card-box-item-number:nth-of-type(3)::before {
	color: #0092E5;
	content: "❸";
	font-weight: 700;
	left: 0;
	position: absolute;
	top: 0;
}

.p-sustainability-safety__card-box-item-dot {
	margin-left: 1.5625rem;
	padding-left: 0.9375rem;
	position: relative;
}

.p-sustainability-safety__card-box-item-dot::before {
	content: "・";
	left: 0;
	position: absolute;
	top: 0;
}

/* ====================================
# environment
==================================== */

.p-sustainability-environment__lead {
	margin-bottom: 2.5rem;
}

.p-sustainability-environment__text-wrap {
	margin-bottom: 2.375rem;
}

.p-sustainability-environment__subtitle {
	border-bottom: 1px solid #000;
	color: #0092E5;
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 0.9375rem;
	padding-bottom: 0.4375rem;
}

.p-sustainability-environment__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.625rem;
}

.p-sustainability-environment__item-title {
	color: #0092E5;
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: 0.625rem;
	padding-bottom: 0rem;
	position: relative;
}

.p-sustainability-environment__item-title::before {
	background-color: #0092E5;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100vw;
	z-index: -1;
}

.p-sustainability-environment__item-text {
	font-size: 1.125rem;
	line-height: 1.5;
	text-align: justify;
}

.p-sustainability-environment__card-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 7.5rem;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.p-sustainability-environment__img-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.25rem;
}

.p-sustainability-environment__img {
	-o-object-fit: cover;
	height: 100%;
	max-width: 27.5rem;
	object-fit: cover;
}

.p-sustainability-environment__img-title {
	font-size: 0.875rem;
	line-height: 1.42;
}

/* ====================================
# ease
==================================== */

.p-sustainability-ease__lead {
	margin-bottom: 2.5rem;
}

.p-sustainability-ease__text-wrap {
	margin-bottom: 2.375rem;
}

.p-sustainability-ease__subtitle {
	border-bottom: 1px solid #000;
	color: #0092E5;
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 0.9375rem;
	padding-bottom: 0.4375rem;
}

.p-sustainability-ease__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.9375rem;
}

.p-sustainability-ease__item-title {
	color: #0092E5;
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: 0.625rem;
	padding-bottom: 0rem;
	position: relative;
	z-index: 0;
}

.p-sustainability-ease__item-title::before {
	background-color: #0092E5;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100vw;
}

.p-sustainability-ease__item-text {
	font-size: 1.125rem;
	line-height: 1.5;
	text-align: justify;
}

.p-sustainability-ease__card-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 7.5rem;
	overflow: hidden;
}

.p-sustainability-ease__img-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.25rem;
	position: relative;
}

.p-sustainability-ease__img {
	-o-object-fit: cover;
	margin-top: auto;
	max-width: 27.5rem;
	object-fit: cover;
}

.p-sustainability-ease__img-title {
	font-size: 0.875rem;
	line-height: 1.42;
}

.p-sustainability-ease__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 2.5rem;
	margin-bottom: 2.5rem;
}

.p-sustainability-ease__group-title {
	border-bottom: 1px solid #0092E5;
	color: #0092E5;
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: 0.625rem;
	width: 100%;
}

.p-sustainability-ease__group-img {
	height: 100%;
	max-width: 12.5rem;
}

.p-sustainability-ease__group-item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	width: 100%;
}

/* ====================================
# トップページ ファーストビュー
==================================== */

.p-top-fv__inner {
	height: 100svh;
	position: relative;
}

#fvMovie {
	-webkit-transition: opacity 0.5s ease-in-out;
	transition: opacity 0.5s ease-in-out;
}

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

.p-top-fv__img img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.p-top-fv__img video {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.p-top-fv__title {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	gap: 2.625rem;
	position: relative;
	right: 10.4%;
	top: 18.7%;
}

.p-top-fv__title-text {
	-webkit-font-feature-settings: initial;
	        font-feature-settings: initial;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	color: #000;
	display: inline;
	font-size: clamp(2rem, 3.7vw, 4.25rem);
	font-weight: 600;
	letter-spacing: 0.13em;
	line-height: 1.3;
	text-align: justify;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	-webkit-writing-mode: vertical-rl;
	    -ms-writing-mode: tb-rl;
	        writing-mode: vertical-rl;
}

.p-top-fv__title-en {
	bottom: 9.1875rem;
	left: 2.5rem;
	position: absolute;
}

.p-top-fv__title-en-text {
	color: #fff;
	display: block;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: clamp(2.5rem, 4.5vw, 5rem);
	font-weight: bold;
	line-height: 1.37;
}

/* ====================================
# トップページ アバウト
==================================== */

.p-top-about__tab-list {
	-ms-overflow-style: none;
	bottom: -0.9375rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.0625rem;
	left: 0;
	/* overflow-x: scroll; */
	padding-bottom: 0.9375rem;
	position: absolute;
	scrollbar-width: none;
	width: 100%;
}

.p-top-about__tab-button {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #EAEAE9;
	color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 7.5rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	position: relative;
	-webkit-transition: background-color 0.3s ease, color 0.3s ease;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 25%;
	z-index: 2;
}

.p-top-about__tab-button:hover {
	background-color: #0092E5;
	color: #fff;
}

.p-top-about__tab-button--recruit {
	background-color: #F3F0C7;
}

.p-top-about__tab-button--recruit:hover {
	background-color: #FF6784;
}

.p-top-about__tab-button.p-top-about__tab-button--recruit.current {
	background-color: #FF6784;
}

.p-top-about__tab-button.p-top-about__tab-button--recruit.current::before {
	border-top: 0.9375rem solid #FF6784;
}

.p-top-about__tab-button.current {
	background-color: #0092E5;
	color: #fff;
}

.p-top-about__tab-button.current::before {
	border-bottom: 0;
	border-left: 0.625rem solid transparent;
	border-right: 0.625rem solid transparent;
	border-style: solid;
	border-top: 0.9375rem solid #0092E5;
	bottom: -0.875rem;
	content: "";
	height: 0;
	left: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	width: 0;
}

.p-top-about__tab-button-head {
	font-size: 1.6875rem;
	font-weight: bold;
	line-height: 1.2;
}

.p-top-about__tab-button-sub {
	font-size: 1rem;
	line-height: 1;
}

/* ====================================
# トップページ ビジネス
==================================== */

.p-top-business__content-inner {
	background-color: #EAEAE9;
	height: 100%;
	padding-bottom: 5.6875rem;
	position: relative;
	width: 100%;
}

.p-top-business__content-block {
	background-color: #fff;
	height: auto;
	max-width: 60.1875rem;
	padding: 4.7vw 6vw;
	position: relative;
	width: 50.2vw;
	z-index: 1;
}

.p-top-business__content-block-text {
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 2.33;
	text-align: justify;
}

.p-top-business__content-bg {
	-o-object-fit: cover;
	border-radius: 0 0 0 16vw;
	object-fit: cover;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
	width: 62.4vw;
	z-index: 0;
}

.p-top-business__content-bg img {
	-o-object-fit: cover;
	aspect-ratio: 1200/700;
	object-fit: cover;
}

.p-top-business__head-wrap {
	margin-left: 13.5vw;
	margin-top: 5.1vw;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	z-index: 1;
}

.p-top-business__head {
	color: #0092E5;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 3.25rem;
	font-weight: bold;
	line-height: 1.2;
}

.p-top-business__sub {
	display: block;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.2;
}

.p-top-business__content-image {
	margin-left: -5rem;
	margin-top: -9.3125rem;
	max-width: 58.9375rem;
	position: relative;
	width: 49.1vw;
	z-index: -1;
}

.p-top-business__list {
	display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
	gap: 0.3125rem;
	margin: 0 auto;
	width: 74.9vw;
  /* margin-top: -12.5rem; */
}

.p-top-business__item {
	background-color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 100%;
	width: auto;
  /* display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2; */
}

.p-top-business__item:nth-of-type(3n - 2) {
  margin-top: 0rem;
  /* margin-top: 12.5rem; */
}

.p-top-business__item:nth-of-type(3n - 1) {
  margin-top: -6.25rem;
  /* margin-top: 6.25rem; */
}

.p-top-business__item:nth-of-type(3n) {
  margin-top: -12.5rem;
}

.p-top-business__item-cat {
	color: #3AA528;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: 0.3125rem;
	text-align: center;
}

.p-top-business__item-cat--green {
	color: #3AA528;
}

.p-top-business__item-cat--blue {
	color: #0092E5;
}

.p-top-business__item-cat--orange {
	color: #EA7435;
}

.p-top-business__item-tag {
	background-color: #3AA528;
	border-radius: 100vmax;
	color: #fff;
	display: block;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: 1.5rem;
	padding: 0.3125rem 0.625rem;
	text-align: center;
	-webkit-transition: color 0.3s ease, background-color 0.3s ease;
	transition: color 0.3s ease, background-color 0.3s ease;
	width: 100%;
  position: relative;
  padding-right: 2rem;
}

.p-top-business__item-tag .arrow{
	border-radius: 100vmax;
	display: block;
	height: 1rem;
	position: absolute;
	right: 1rem;
	top: 50%;
  transform: translateY(-50%);
	width: 1rem;
}

.p-top-business__item-tag .arrow::before,
.p-top-business__item-tag .arrow::after {
	background-color: #fff;
	border-radius: 9999px;
	content: "";
	height: 0.125rem;
	position: absolute;
	right: 0.25rem;
	top: calc(50% - 1px);
	-webkit-transform-origin: calc(100% - 1px) 50%;
	        transform-origin: calc(100% - 1px) 50%;
	width: 0.4375rem;
}

.p-top-business__item-tag .arrow::before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.p-top-business__item-tag .arrow::after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.p-top-business__item-tag:hover {
	background-color: #fff;
}

.p-top-business__item-tag--green {
	background-color: #3AA528;
}

.p-top-business__item-tag--blue {
	background-color: #0092E5;
}

.p-top-business__item-tag--orange {
	background-color: #EA7435;
}

.p-top-business__item-tag--green:hover {
	color: #3AA528;
}

.p-top-business__item-tag--blue:hover {
	color: #0092E5;
}

.p-top-business__item-tag--orange:hover {
	color: #EA7435;
}

.p-top-business__item-image {
	aspect-ratio: 1/1;
	overflow: hidden;
	position: relative;
	-webkit-transition: -webkit-filter 0.3s ease;
	transition: -webkit-filter 0.3s ease;
	transition: filter 0.3s ease;
	transition: filter 0.3s ease, -webkit-filter 0.3s ease;
	width: 100%;
}

.p-top-business__item-image img {
	-o-object-fit: cover;
	aspect-ratio: 1/1;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.p-top-business__item-image::before {
	background-color: rgba(58, 165, 40, 0);
	content: "";
	height: 100%;
	left: -100%;
	position: absolute;
	top: 0;
	-webkit-transition: left 0.3s ease, background-color 0.3s ease;
	transition: left 0.3s ease, background-color 0.3s ease;
	width: 100%;
}

.p-top-business__item-image:hover::before {
	left: 0%;
}

.p-top-business__item-image--green:hover::before {
	background-color: rgba(58, 165, 40, 0.8);
}

.p-top-business__item-image--blue:hover::before {
	background-color: rgba(0, 146, 229, 0.8);
}

.p-top-business__item-image--orange:hover::before {
	background-color: rgba(234, 116, 53, 0.8);
}

.p-top-business__item-text-wrap {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	padding: 2.375rem 3rem;
}

.p-top-business__item-head {
	font-family: "Hiragino Sans", "ヒラギノ角ゴシック", "Yu Gothic", "游ゴシック", "Meiryo", sans-serif;
	font-size: 1.5625rem;
	font-weight: 600;
	line-height: 1.35;
	margin-bottom: 1.375rem;
	text-align: center;
}

.p-top-business__item-text {
	font-size: 1rem;
	line-height: 1.75;
	margin-bottom: 1.5rem;
	text-align: justify;
}

.p-top-business__item-sub-head {
	color: #0092E5;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

.p-top-business__item-sub-text {
	font-size: 0.875rem;
	font-weight: 300;
	line-height: 1.2;
	margin-bottom: 1.5625rem;
	text-align: center;
}

.p-top-business__item-link {
	border: 1px solid #0092E5;
	border-radius: 100vmax;
	display: block;
	font-size: 0.9375rem;
	height: 100%;
	padding: 1.3125rem 2.8125rem 1.3125rem 1.375rem;
	position: relative;
	width: 100%;
}

.p-top-business__item-link .arrow {
	background-color: #0092E5;
	border-radius: 100vmax;
	display: block;
	height: 1rem;
	position: absolute;
	right: 1.375rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 1rem;
}

.p-top-business__item-link .arrow::before,
.p-top-business__item-link .arrow::after {
	background-color: #fff;
	border-radius: 9999px;
	content: "";
	height: 0.125rem;
	position: absolute;
	right: 0.25rem;
	top: calc(50% - 1px);
	-webkit-transform-origin: calc(100% - 1px) 50%;
	        transform-origin: calc(100% - 1px) 50%;
	width: 0.4375rem;
}

.p-top-business__item-link .arrow::before {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.p-top-business__item-link .arrow::after {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

/* ====================================
# recruit
==================================== */

.p-top-recruit__content-inner {
	background-color: #fff;
	height: 100%;
	position: relative;
	width: 100%;
}

.p-top-recruit__intro-inner {
	margin: 0 auto;
	padding-bottom: 5.8125rem;
	padding-top: 5.9375rem;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.p-top-recruit__intro-head {
	margin: 0 auto 2.6875rem;
	max-width: 44.9375rem;
}

.p-top-recruit__text {
	font-size: 1.125rem;
	line-height: 2.33;
	text-align: center;
}

.p-top-recruit__sns {
	background-color: #EAEAE9;
	padding-bottom: 5rem;
	padding-top: 5rem;
}

.p-top-recruit__sns-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1875rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.p-top-recruit__sns-x {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 2.1875rem;
	width: 38%;
}

.p-top-recruit__sns-instagram {
	max-width: 50.9375rem;
	width: 100%;
}

.p-top-recruit__sns-qr-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 2.1875rem;
}

.p-top-recruit__sns-qr {
	max-width: 12.5rem;
	width: 100%;
}

.p-vision__head-wrap {
	margin-bottom: 3.75rem;
}

.p-vision-ceo__container {
	background-color: #0092E5;
}

.p-vision-ceo__inner {
	padding-bottom: 4.375rem;
	padding-top: 4.375rem;
	position: relative;
}

.p-vision-ceo__text {
	color: #fff;
	font-size: 1.1875rem;
	line-height: 2.1;
	text-align: justify;
}

.p-vision-ceo__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.875rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-vision-ceo__left {
	max-width: 45.625rem;
	width: 100%;
}

.p-vision-ceo__right {
	max-width: 36.25rem;
	width: 100%;
}

.p-vision-ceo__image {
	margin-bottom: 0.625rem;
}

.p-vision-ceo__text-sub {
	color: #fff;
	font-size: 1rem;
	line-height: 1.5;
	text-align: right;
}

.p-vision-ceo__text-name {
	color: #fff;
	font-family: Yu Mincho, MS Mincho, MS 明朝, serif !important;
	font-size: 3.125rem;
	line-height: 1.5;
	text-align: right;
}

.p-vision-principle__inner {
	padding-bottom: 7.0625rem;
	padding-top: 5.625rem;
	position: relative;
}

.p-vision-principle__text {
	font-size: 1.125rem;
	line-height: 2.3;
	margin: 0 auto 2.5rem;
	max-width: 68.75rem;
	text-align: justify;
}

.p-vision-principle__list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 2.5rem 1.875rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 2.5rem;
}

.p-vision-principle__item {
	background-color: #EAEAE9;
	border-radius: 0.625rem;
	padding: 1.125rem 1.875rem 1.875rem 12.5rem;
	position: relative;
	width: calc(50% - 0.9375rem);
}

.p-vision-principle__item-number {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	border-radius: 0 0 100vmax 100vmax;
	border-top: 0.21875rem solid #fff;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-family: Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
	font-size: 3rem;
	height: 4.625rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	left: 1.875rem;
	line-height: 1;
	position: absolute;
	top: 0rem;
	width: 8.75rem;
}

.p-vision-principle__item-number:before {
	content: "";
	display: block;
	height: 100%;
	left: 0rem;
	position: absolute;
	top: 0rem;
	width: 100%;
}

.p-vision-principle__item:nth-of-type(1) .p-vision-principle__item-number {
	background: url(../images/vision/number_bg01.svg) no-repeat center center/cover;
}

.p-vision-principle__item:nth-of-type(2) .p-vision-principle__item-number {
	background: url(../images/vision/number_bg02.svg) no-repeat center center/cover;
}

.p-vision-principle__item:nth-of-type(3) .p-vision-principle__item-number {
	background: url(../images/vision/number_bg03.svg) no-repeat center center/cover;
}

.p-vision-principle__item:nth-of-type(4) .p-vision-principle__item-number {
	background: url(../images/vision/number_bg04.svg) no-repeat center center/cover;
}

.p-vision-principle__item:nth-of-type(5) .p-vision-principle__item-number {
	background: url(../images/vision/number_bg05.svg) no-repeat center center/cover;
}

.p-vision-principle__item:nth-of-type(6) .p-vision-principle__item-number {
	background: url(../images/vision/number_bg06.svg) no-repeat center center/cover;
}

.p-vision-principle__item:nth-of-type(7) .p-vision-principle__item-number {
	background: url(../images/vision/number_bg07.svg) no-repeat center center/cover;
}

.p-vision-principle__item-title {
	border-bottom: 0.0625rem solid #000;
	font-size: 2.0625rem;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 0.6875rem;
}

.p-vision-principle__item-text {
	font-size: 1.125rem;
	font-weight: 300;
	line-height: 1.5;
	text-align: justify;
}

.p-vision-principle__arrow {
	margin: 0 auto 2.5rem;
	max-width: 7.6875rem;
	width: 100%;
}

.p-vision-principle__group {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #D3DFF2;
	border-radius: 100vmax;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 13.125rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 0 1.25rem;
	width: 100%;
}

.p-vision-principle__group img {
	display: block;
	width: 26.6875rem;
}

.p-vision-management {
	background-color: #EAEAE9;
}

.p-vision-management__inner {
	padding-bottom: 5rem;
	padding-top: 6.0625rem;
	position: relative;
}

.p-vision-management__head-wrap {
	margin-bottom: 6.3125rem;
}

.p-vision-management__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 2.5rem;
}

.p-vision-management__left {
	max-width: 42.5rem;
	width: 100%;
}

.p-vision-management__right {
	max-width: 42.5rem;
	width: 100%;
}

.p-vision-management__item-title {
	border-bottom: 0.0625rem solid #000;
	color: #0092E5;
	font-size: 1.9375rem;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 1.125rem;
}

.p-vision-management__item-text {
	font-size: 1.125rem;
	line-height: 1.75;
	text-align: justify;
}

.p-vision-management__item-lead {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.25rem;
	font-weight: 600;
	height: 2.5rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 0.9375rem;
	width: 8.75rem;
}

.p-vision-management__item-text--bold {
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: justify;
}

.p-vision-management__img {
	margin: 0 auto;
	max-width: 36.875rem;
	width: 100%;
}

.p-vision-management__socotec {
	max-width: 20rem;
	width: 100%;
}

.p-works-archive__text {
	font-size: 1rem;
	font-weight: 600;
	line-height: 2.75;
	margin: 0 auto 4.875rem;
	max-width: 68.75rem;
	text-align: center;
}

.p-works-archive__container {
	background-color: rgba(0, 146, 229, 0.15);
	margin: 0 calc(-50vw + 50%);
	padding-top: 5rem;
	width: 100vw;
}

.p-works-archive__categorys-wrap {
	margin: 0 auto;
	max-width: 90rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.p-works-archive__categorys {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.1875rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 6.0625rem;
	width: 100%;
}

.p-works-archive__category {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	width: 100%;
}

.p-works-archive__category a {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #757677;
	border-radius: 100vmax;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.25rem;
	height: 2.875rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 0.625rem 1.25rem;
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
	width: 100%;
}

.p-works-archive__category a:hover {
	opacity: 0.7;
}

.category-it-business.p-works-archive__category a {
	background-color: #0092E5;
}

.category-career.p-works-archive__category a {
	background-color: #EA7435;
}

.category-social-system.p-works-archive__category a {
	background-color: #3AA528;
}

.p-works-archive__lists {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 3.4375rem;
	margin-bottom: 5rem;
	width: 100%;
}

.p-works-archive__list {
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
	width: calc(33.3333333333% - 2.2916666667rem);
}

.p-works-archive__list-top-caetgory {
	background-color: #0092E5;
	color: #fff;
	margin-right: 2.5rem;
	max-width: 13.125rem;
	padding: 0.6875rem 0.625rem;
	position: relative;
	width: 100%;
}

.p-works-archive__list-top-caetgory::before {
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 100%);
	background-color: #0092E5;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	right: -2.4375rem;
	top: 0;
	width: 2.5rem;
}

.p-works-archive__list.category-it-business .p-works-archive__list-top-caetgory {
	background-color: #0092E5;
}

.p-works-archive__list.category-it-business .p-works-archive__list-top-caetgory::before {
	background-color: #0092E5;
}

.p-works-archive__list.category-it-business .p-works-archive__list-top-small {
	color: #0092E5;
}

.p-works-archive__list.category-career .p-works-archive__list-top-caetgory {
	background-color: #EA7435;
}

.p-works-archive__list.category-career .p-works-archive__list-top-caetgory::before {
	background-color: #EA7435;
}

.p-works-archive__list.category-career .p-works-archive__list-top-small {
	color: #EA7435;
}

.p-works-archive__list.category-social-system .p-works-archive__list-top-caetgory {
	background-color: #3AA528;
}

.p-works-archive__list.category-social-system .p-works-archive__list-top-caetgory::before {
	background-color: #3AA528;
}

.p-works-archive__list.category-social-system .p-works-archive__list-top-small {
	color: #3AA528;
}

.p-works-archive__list:hover {
	opacity: 0.5;
}

.p-works-archive__list-top {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-works-archive__list-top-meta {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	width: 100%;
}

.p-works-archive__list-top-example {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	white-space: nowrap;
}

.p-works-archive__list-top-small {
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.5;
}

.p-works-archive__list-image {
	margin-bottom: 0.625rem;
}

.p-works-archive__list-image img {
	-o-object-fit: cover;
	aspect-ratio: 430/340;
	object-fit: cover;
}

.p-works-archive__list-category {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	border-radius: 0 100vmax 100vmax 0;
	color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.125rem;
	font-weight: 600;
	height: 3rem;
	line-height: 1.5;
	padding-left: 0.625rem;
	width: 13.125rem;
}

.p-works-archive__list.category-it-business .p-works-archive__list-category {
	background-color: #0092E5;
}

.p-works-archive__list.category-career .p-works-archive__list-category {
	background-color: #EA7435;
}

.p-works-archive__list.category-social-system .p-works-archive__list-category {
	background-color: #3AA528;
}

.p-works-archive__list-category-wrap {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 0.625rem;
}

.p-works-archive__list.category-it-business .p-works-archive__list-category-arrow path {
	stroke: #0092E5;
}

.p-works-archive__list.category-career .p-works-archive__list-category-arrow path {
	stroke: #EA7435;
}

.p-works-archive__list.category-social-system .p-works-archive__list-category-arrow path {
	stroke: #3AA528;
}

.p-works-archive__list-title {
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.5;
	width: 100%;
}

.p-works-archive__list-text {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.75;
	text-align: justify;
	width: 100%;
}

.p-works-archive__pagination {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-bottom: 5rem;
}

.p-works-archive__pagination .nav-links {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
}

.p-works-archive__pagination .page-numbers {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 1.125rem;
	font-weight: 600;
	height: 3.375rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 3.375rem;
}

.p-works-archive__pagination .page-numbers:hover {
	background-color: #0092E5;
	color: #fff;
}

.p-works-archive__pagination .page-numbers.current {
	background-color: #0092E5;
	color: #fff;
	pointer-events: none;
}

.p-works-archive__pagination .page-numbers.prev,
.p-works-archive__pagination .page-numbers.next {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #0092E5;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 3.375rem;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 3.375rem;
}

.p-works-archive__pagination .page-numbers.prev svg,
.p-works-archive__pagination .page-numbers.next svg {
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 0.625rem;
}

.p-works-archive__pagination .page-numbers.prev:hover,
.p-works-archive__pagination .page-numbers.next:hover {
	background-color: #fff;
}

.p-works-archive__pagination .page-numbers.prev:hover svg,
.p-works-archive__pagination .page-numbers.next:hover svg {
	fill: #0092E5;
}

.p-works-archive__pagination .page-numbers.dots {
	background: none;
	pointer-events: none;
	width: 1.9375rem;
}

.p-works-archive__pagination .page-numbers i {
	font-size: 1rem;
}

.p-works-single__head-wrap {
	padding-bottom: 5.625rem;
	padding-top: 4.375rem;
}

.p-works-single__container {
	background-color: rgba(0, 146, 229, 0.15);
	margin: 0 calc(-50vw + 50%);
	padding-bottom: 5.625rem;
	padding-top: 5.625rem;
	width: 100vw;
}

.p-works-single__container:last-of-type {
	padding-bottom: 0;
}

.p-works-single__client-wrap {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.p-works-single__meta-wrap {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 0.625rem;
	margin-bottom: 2.5rem;
}

.p-works-single__meta-cat {
	background-color: #0092E5;
	color: #fff;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	margin-right: 2.5rem;
	max-width: 13.125rem;
	padding: 0.375rem 0.625rem;
	position: relative;
	width: 100%;
}

.p-works-single__meta-cat.category-it-business {
	background-color: #0092E5;
}

.p-works-single__meta-cat.category-career {
	background-color: #EA7435;
}

.p-works-single__meta-cat.category-social-system {
	background-color: #3AA528;
}

.p-works-single__meta-desc {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
}

.p-works-single__meta-cat::before {
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 100%);
	background-color: #0092E5;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	right: -2.4375rem;
	top: 0;
	width: 2.5rem;
}

.p-works-single__meta-cat.category-it-business::before {
	background-color: #0092E5;
}

.p-works-single__meta-cat.category-career::before {
	background-color: #EA7435;
}

.p-works-single__meta-cat.category-social-system::before {
	background-color: #3AA528;
}

.p-works-archive__list.category-it-business .p-works-single__meta-cat {
	background-color: #0092E5;
}

.p-works-archive__list.category-it-business .p-works-single__meta-cat::before {
	background-color: #0092E5;
}

.p-works-archive__list.category-it-business .p-works-archive__list-top-small {
	color: #0092E5;
}

.p-works-archive__list.category-career .p-works-single__meta-cat {
	background-color: #EA7435;
}

.p-works-archive__list.category-career .p-works-single__meta-cat::before {
	background-color: #EA7435;
}

.p-works-archive__list.category-career .p-works-single__meta-desc {
	color: #EA7435;
}

.p-works-archive__list.category-social-system .p-works-single__meta-cat {
	background-color: #3AA528;
}

.p-works-archive__list.category-social-system .p-works-single__meta-cat::before {
	background-color: #3AA528;
}

.p-works-archive__list.category-social-system .p-works-single__meta-desc {
	color: #3AA528;
}

.p-works-single__group-container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.875rem;
	margin-bottom: 6.25rem;
}

.p-works-single__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 3.75rem 3.75rem;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.p-works-single__group-text-wrap {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

.p-works-single__logo {
	width: 20.9375rem;
}

.p-works-single__client-name {
	font-size: 2.375rem;
	font-weight: bold;
	margin-left: -0.625rem;
}

.p-works-single__content-title {
	font-size: 2.0625rem;
	font-weight: bold;
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 1/1/2/2;
	line-height: 1.5;
	margin-bottom: 4.375rem;
	margin-top: 8.75rem;
	max-width: 38.75rem;
	width: 100%;
}

.p-works-products-single__content-text-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 3.125rem;
}

.p-works-single__content-text {
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.75;
	margin-bottom: 2.5rem;
	text-align: justify;
}

.p-works-single__content-text:last-of-type {
	margin-bottom: 0;
}

.p-works-single__content-text-orange {
	color: #EA7435;
}

.p-works-single__content-text-blue {
	color: #0092E5;
}

.p-works-single__content-img {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

.p-works-single__img-wrap {
	margin: 0 calc(-50vw + 50%);
	width: 100vw;
}

.p-works-single .p-works-single__home {
	margin: 0 auto 2.5rem;
	max-width: 23.6875rem;
}

.p-works-single__content-img-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.875rem;
}

.p-works-single__content-text-wrap-small-head {
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.75;
	margin-bottom: 2.5rem;
	text-align: justify;
}

.p-works-single__content-img-caption {
	font-size: 1rem;
	line-height: 1.75;
	text-align: justify;
}
.p-works-products-single__meta-wrap {
	margin-bottom: 0.3125rem;
}

.p-works-products-single__client-name {
	margin-bottom: 6.25rem;
	margin-left: 0;
}

.p-works-products-single__content-title {
	margin-bottom: 2.5rem;
	margin-top: 0;
	max-width: 100%;
	width: 100%;
}

.p-works-single__group-text-wrap--100 {
	max-width: 100%;
	width: 100%;
}

.p-works-products-single__content-img {
	margin-bottom: 3.125rem;
	max-width: 100%;
	width: 100%;
}

.p-works-single__content-text--textarea {
	margin-bottom: 0;
}

.p-works-single__content-text-heading {
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.5;
}

.u-hidden-pc {
	display: none;
}

.u-hidden-pc-ib {
	display: none;
}

.u-hidden-sp {
	display: block;
}

.u-hidden-sp-i {
	display: inline;
}

.u-hidden-sp-ib {
	display: inline-block;
}

.u-hidden-pc-f {
	display: none;
}

.u-hidden-sp-f {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.u-hidden-pc-only {
	display: none;
}

.u-mb-1 {
	margin-bottom: 0.0625rem;
}

.u-mb-2 {
	margin-bottom: 0.125rem;
}

.u-mb-3 {
	margin-bottom: 0.1875rem;
}

.u-mb-4 {
	margin-bottom: 0.25rem;
}

.u-mb-5 {
	margin-bottom: 0.3125rem;
}

.u-mb-6 {
	margin-bottom: 0.375rem;
}

.u-mb-7 {
	margin-bottom: 0.4375rem;
}

.u-mb-8 {
	margin-bottom: 0.5rem;
}

.u-mb-9 {
	margin-bottom: 0.5625rem;
}

.u-mb-10 {
	margin-bottom: 0.625rem;
}

.u-mb-11 {
	margin-bottom: 0.6875rem;
}

.u-mb-12 {
	margin-bottom: 0.75rem;
}

.u-mb-13 {
	margin-bottom: 0.8125rem;
}

.u-mb-14 {
	margin-bottom: 0.875rem;
}

.u-mb-15 {
	margin-bottom: 0.9375rem;
}

.u-mb-16 {
	margin-bottom: 1rem;
}

.u-mb-17 {
	margin-bottom: 1.0625rem;
}

.u-mb-18 {
	margin-bottom: 1.125rem;
}

.u-mb-19 {
	margin-bottom: 1.1875rem;
}

.u-mb-20 {
	margin-bottom: 1.25rem;
}

.u-mb-21 {
	margin-bottom: 1.3125rem;
}

.u-mb-22 {
	margin-bottom: 1.375rem;
}

.u-mb-23 {
	margin-bottom: 1.4375rem;
}

.u-mb-24 {
	margin-bottom: 1.5rem;
}

.u-mb-25 {
	margin-bottom: 1.5625rem;
}

.u-mb-26 {
	margin-bottom: 1.625rem;
}

.u-mb-27 {
	margin-bottom: 1.6875rem;
}

.u-mb-28 {
	margin-bottom: 1.75rem;
}

.u-mb-29 {
	margin-bottom: 1.8125rem;
}

.u-mb-30 {
	margin-bottom: 1.875rem;
}

.u-mb-31 {
	margin-bottom: 1.9375rem;
}

.u-mb-32 {
	margin-bottom: 2rem;
}

.u-mb-33 {
	margin-bottom: 2.0625rem;
}

.u-mb-34 {
	margin-bottom: 2.125rem;
}

.u-mb-35 {
	margin-bottom: 2.1875rem;
}

.u-mb-36 {
	margin-bottom: 2.25rem;
}

.u-mb-37 {
	margin-bottom: 2.3125rem;
}

.u-mb-38 {
	margin-bottom: 2.375rem;
}

.u-mb-39 {
	margin-bottom: 2.4375rem;
}

.u-mb-40 {
	margin-bottom: 2.5rem;
}

.u-mb-41 {
	margin-bottom: 2.5625rem;
}

.u-mb-42 {
	margin-bottom: 2.625rem;
}

.u-mb-43 {
	margin-bottom: 2.6875rem;
}

.u-mb-44 {
	margin-bottom: 2.75rem;
}

.u-mb-45 {
	margin-bottom: 2.8125rem;
}

.u-mb-46 {
	margin-bottom: 2.875rem;
}

.u-mb-47 {
	margin-bottom: 2.9375rem;
}

.u-mb-48 {
	margin-bottom: 3rem;
}

.u-mb-49 {
	margin-bottom: 3.0625rem;
}

.u-mb-50 {
	margin-bottom: 3.125rem;
}

.u-mb-51 {
	margin-bottom: 3.1875rem;
}

.u-mb-52 {
	margin-bottom: 3.25rem;
}

.u-mb-53 {
	margin-bottom: 3.3125rem;
}

.u-mb-54 {
	margin-bottom: 3.375rem;
}

.u-mb-55 {
	margin-bottom: 3.4375rem;
}

.u-mb-56 {
	margin-bottom: 3.5rem;
}

.u-mb-57 {
	margin-bottom: 3.5625rem;
}

.u-mb-58 {
	margin-bottom: 3.625rem;
}

.u-mb-59 {
	margin-bottom: 3.6875rem;
}

.u-mb-60 {
	margin-bottom: 3.75rem;
}

.u-mb-61 {
	margin-bottom: 3.8125rem;
}

.u-mb-62 {
	margin-bottom: 3.875rem;
}

.u-mb-63 {
	margin-bottom: 3.9375rem;
}

.u-mb-64 {
	margin-bottom: 4rem;
}

.u-mb-65 {
	margin-bottom: 4.0625rem;
}

.u-mb-66 {
	margin-bottom: 4.125rem;
}

.u-mb-67 {
	margin-bottom: 4.1875rem;
}

.u-mb-68 {
	margin-bottom: 4.25rem;
}

.u-mb-69 {
	margin-bottom: 4.3125rem;
}

.u-mb-70 {
	margin-bottom: 4.375rem;
}

.u-mb-71 {
	margin-bottom: 4.4375rem;
}

.u-mb-72 {
	margin-bottom: 4.5rem;
}

.u-mb-73 {
	margin-bottom: 4.5625rem;
}

.u-mb-74 {
	margin-bottom: 4.625rem;
}

.u-mb-75 {
	margin-bottom: 4.6875rem;
}

.u-mb-76 {
	margin-bottom: 4.75rem;
}

.u-mb-77 {
	margin-bottom: 4.8125rem;
}

.u-mb-78 {
	margin-bottom: 4.875rem;
}

.u-mb-79 {
	margin-bottom: 4.9375rem;
}

.u-mb-80 {
	margin-bottom: 5rem;
}

.u-mb-81 {
	margin-bottom: 5.0625rem;
}

.u-mb-82 {
	margin-bottom: 5.125rem;
}

.u-mb-83 {
	margin-bottom: 5.1875rem;
}

.u-mb-84 {
	margin-bottom: 5.25rem;
}

.u-mb-85 {
	margin-bottom: 5.3125rem;
}

.u-mb-86 {
	margin-bottom: 5.375rem;
}

.u-mb-87 {
	margin-bottom: 5.4375rem;
}

.u-mb-88 {
	margin-bottom: 5.5rem;
}

.u-mb-89 {
	margin-bottom: 5.5625rem;
}

.u-mb-90 {
	margin-bottom: 5.625rem;
}

.u-mb-91 {
	margin-bottom: 5.6875rem;
}

.u-mb-92 {
	margin-bottom: 5.75rem;
}

.u-mb-93 {
	margin-bottom: 5.8125rem;
}

.u-mb-94 {
	margin-bottom: 5.875rem;
}

.u-mb-95 {
	margin-bottom: 5.9375rem;
}

.u-mb-96 {
	margin-bottom: 6rem;
}

.u-mb-97 {
	margin-bottom: 6.0625rem;
}

.u-mb-98 {
	margin-bottom: 6.125rem;
}

.u-mb-99 {
	margin-bottom: 6.1875rem;
}

.u-mb-100 {
	margin-bottom: 6.25rem;
}

.u-mb-101 {
	margin-bottom: 6.3125rem;
}

.u-mb-102 {
	margin-bottom: 6.375rem;
}

.u-mb-103 {
	margin-bottom: 6.4375rem;
}

.u-mb-104 {
	margin-bottom: 6.5rem;
}

.u-mb-105 {
	margin-bottom: 6.5625rem;
}

.u-mb-106 {
	margin-bottom: 6.625rem;
}

.u-mb-107 {
	margin-bottom: 6.6875rem;
}

.u-mb-108 {
	margin-bottom: 6.75rem;
}

.u-mb-109 {
	margin-bottom: 6.8125rem;
}

.u-mb-110 {
	margin-bottom: 6.875rem;
}

.u-mb-111 {
	margin-bottom: 6.9375rem;
}

.u-mb-112 {
	margin-bottom: 7rem;
}

.u-mb-113 {
	margin-bottom: 7.0625rem;
}

.u-mb-114 {
	margin-bottom: 7.125rem;
}

.u-mb-115 {
	margin-bottom: 7.1875rem;
}

.u-mb-116 {
	margin-bottom: 7.25rem;
}

.u-mb-117 {
	margin-bottom: 7.3125rem;
}

.u-mb-118 {
	margin-bottom: 7.375rem;
}

.u-mb-119 {
	margin-bottom: 7.4375rem;
}

.u-mb-120 {
	margin-bottom: 7.5rem;
}

.u-mb-121 {
	margin-bottom: 7.5625rem;
}

.u-mb-122 {
	margin-bottom: 7.625rem;
}

.u-mb-123 {
	margin-bottom: 7.6875rem;
}

.u-mb-124 {
	margin-bottom: 7.75rem;
}

.u-mb-125 {
	margin-bottom: 7.8125rem;
}

.u-mb-126 {
	margin-bottom: 7.875rem;
}

.u-mb-127 {
	margin-bottom: 7.9375rem;
}

.u-mb-128 {
	margin-bottom: 8rem;
}

.u-mb-129 {
	margin-bottom: 8.0625rem;
}

.u-mb-130 {
	margin-bottom: 8.125rem;
}

.u-mb-131 {
	margin-bottom: 8.1875rem;
}

.u-mb-132 {
	margin-bottom: 8.25rem;
}

.u-mb-133 {
	margin-bottom: 8.3125rem;
}

.u-mb-134 {
	margin-bottom: 8.375rem;
}

.u-mb-135 {
	margin-bottom: 8.4375rem;
}

.u-mb-136 {
	margin-bottom: 8.5rem;
}

.u-mb-137 {
	margin-bottom: 8.5625rem;
}

.u-mb-138 {
	margin-bottom: 8.625rem;
}

.u-mb-139 {
	margin-bottom: 8.6875rem;
}

.u-mb-140 {
	margin-bottom: 8.75rem;
}

.u-mb-141 {
	margin-bottom: 8.8125rem;
}

.u-mb-142 {
	margin-bottom: 8.875rem;
}

.u-mb-143 {
	margin-bottom: 8.9375rem;
}

.u-mb-144 {
	margin-bottom: 9rem;
}

.u-mb-145 {
	margin-bottom: 9.0625rem;
}

.u-mb-146 {
	margin-bottom: 9.125rem;
}

.u-mb-147 {
	margin-bottom: 9.1875rem;
}

.u-mb-148 {
	margin-bottom: 9.25rem;
}

.u-mb-149 {
	margin-bottom: 9.3125rem;
}

.u-mb-150 {
	margin-bottom: 9.375rem;
}

.u-mb-151 {
	margin-bottom: 9.4375rem;
}

.u-mb-152 {
	margin-bottom: 9.5rem;
}

.u-mb-153 {
	margin-bottom: 9.5625rem;
}

.u-mb-154 {
	margin-bottom: 9.625rem;
}

.u-mb-155 {
	margin-bottom: 9.6875rem;
}

.u-mb-156 {
	margin-bottom: 9.75rem;
}

.u-mb-157 {
	margin-bottom: 9.8125rem;
}

.u-mb-158 {
	margin-bottom: 9.875rem;
}

.u-mb-159 {
	margin-bottom: 9.9375rem;
}

.u-mb-160 {
	margin-bottom: 10rem;
}

.u-mb-161 {
	margin-bottom: 10.0625rem;
}

.u-mb-162 {
	margin-bottom: 10.125rem;
}

.u-mb-163 {
	margin-bottom: 10.1875rem;
}

.u-mb-164 {
	margin-bottom: 10.25rem;
}

.u-mb-165 {
	margin-bottom: 10.3125rem;
}

.u-mb-166 {
	margin-bottom: 10.375rem;
}

.u-mb-167 {
	margin-bottom: 10.4375rem;
}

.u-mb-168 {
	margin-bottom: 10.5rem;
}

.u-mb-169 {
	margin-bottom: 10.5625rem;
}

.u-mb-170 {
	margin-bottom: 10.625rem;
}

.u-mb-171 {
	margin-bottom: 10.6875rem;
}

.u-mb-172 {
	margin-bottom: 10.75rem;
}

.u-mb-173 {
	margin-bottom: 10.8125rem;
}

.u-mb-174 {
	margin-bottom: 10.875rem;
}

.u-mb-175 {
	margin-bottom: 10.9375rem;
}

.u-mb-176 {
	margin-bottom: 11rem;
}

.u-mb-177 {
	margin-bottom: 11.0625rem;
}

.u-mb-178 {
	margin-bottom: 11.125rem;
}

.u-mb-179 {
	margin-bottom: 11.1875rem;
}

.u-mb-180 {
	margin-bottom: 11.25rem;
}

.u-mb-181 {
	margin-bottom: 11.3125rem;
}

.u-mb-182 {
	margin-bottom: 11.375rem;
}

.u-mb-183 {
	margin-bottom: 11.4375rem;
}

.u-mb-184 {
	margin-bottom: 11.5rem;
}

.u-mb-185 {
	margin-bottom: 11.5625rem;
}

.u-mb-186 {
	margin-bottom: 11.625rem;
}

.u-mb-187 {
	margin-bottom: 11.6875rem;
}

.u-mb-188 {
	margin-bottom: 11.75rem;
}

.u-mb-189 {
	margin-bottom: 11.8125rem;
}

.u-mb-190 {
	margin-bottom: 11.875rem;
}

.u-mb-191 {
	margin-bottom: 11.9375rem;
}

.u-mb-192 {
	margin-bottom: 12rem;
}

.u-mb-193 {
	margin-bottom: 12.0625rem;
}

.u-mb-194 {
	margin-bottom: 12.125rem;
}

.u-mb-195 {
	margin-bottom: 12.1875rem;
}

.u-mb-196 {
	margin-bottom: 12.25rem;
}

.u-mb-197 {
	margin-bottom: 12.3125rem;
}

.u-mb-198 {
	margin-bottom: 12.375rem;
}

.u-mb-199 {
	margin-bottom: 12.4375rem;
}

.u-mb-200 {
	margin-bottom: 12.5rem;
}

.u-ps-none {
	padding-left: 0;
	padding-right: 0;
}

.u-text-space {
	letter-spacing: 1em;
}

@media (max-width: 1720px) {

.p-sustainability-list__number-wrap {
	left: 0;
	margin-bottom: 2.5rem;
	position: relative;
	top: 0;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.p-sustainability-safety__card-wrap {
	margin: 0;
	padding: 0;
	width: 100%;
}

}

@media screen and (max-width: 1600px) {

.p-service-concept__text {
	margin-bottom: 1.875rem;
}

}

@media screen and (max-width: 1500px) {

.p-top-business__head-wrap {
	margin-left: 10vw;
	margin-top: 8vw;
}

.p-top-business__content-image {
	margin-left: 0rem;
	margin-top: -3.125rem;
}

.p-top-business__item-head {
	text-align: justify;
}

.p-top-business__item-head br {
	display: none;
}

}

@media screen and (max-width: 1450px) {

.p-top-business__content-block-text br {
	display: none;
}

}

@media screen and (max-width: 1280px) {

.p-service-concept__item:nth-of-type(1) {
	right: calc(41rem - 7vw);
}

.p-service-concept__item:nth-of-type(2) {
	right: calc(23.875rem - 7vw);
}

.p-service-concept__item:nth-of-type(3) {
	right: calc(6.625rem - 7vw);
}
.l-header__nav {
  display: none;
}

}

@media screen and (max-width: 1060px) {

html {
	font-size: 1.1428571429vw;
}

}

@media screen and (max-width: 1024px) {

.p-contact__wrap .p-form dt {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #fff;
	color: var(--dark-green);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 400;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-right: 0.9375rem;
	padding: 1rem;
	width: 18.4375rem;
}

}

@media screen and (max-width: 960px) {

.p-contact-thanks .p-contact-thanks__desc {
	text-align: left;
}

}

@media screen and (max-width: 768px) {

html {
	font-size: 16px;
}

a[href^="tel:"] {
	pointer-events: auto;
}

.js-header__nav-list-link-btn {
	display: block;
	height: 2.5rem;
	position: relative;
	width: 2.5rem;
	z-index: 2;
}

.js-header__nav-list-link-btn::before {
	background: url("../images/common/nav-icon.png") no-repeat center center/cover;
	content: "";
	height: 1rem;
	left: 50%;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(90deg) scale(0.55);
	        transform: translate(-50%, -50%) rotate(90deg) scale(0.55);
	width: 0.6875rem;
}

.js-header__nav-list-link-btn.is-accordionActive::before {
	background: url("../images/common/nav-icon.png") no-repeat center center/cover;
	content: "";
	height: 1rem;
	left: 50%;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(270deg) scale(0.55);
	        transform: translate(-50%, -50%) rotate(270deg) scale(0.55);
	width: 0.6875rem;
}

.l-body {
	padding-bottom: 4.375rem;
	padding-top: 0.75rem;
}

.l-footer__wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.l-footer__left {
	padding: 3.75rem 1.25rem;
	width: 100%;
}

.l-footer__right {
	padding: 3.75rem 1.25rem 8.75rem;
	width: 100%;
}

.l-footer__logo {
	margin: 0;
}

.l-footer__nav {
	margin-bottom: 9.375rem;
}

.l-footer__nav-wrap {
	gap: 3.125rem 1.875rem;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}

.l-footer__access {
	font-size: 0.9375rem;
}

.l-footer__access span {
	display: block;
}

.l-footer__backtotop {
	bottom: 1.25rem;
	left: auto;
	left: 1.25rem;
}

.l-footer__backtotop .cls-1 {
	fill: #fff;
}

.l-footer__backtotop .cls-2 {
	stroke: #fff;
}

.l-header__inner {
	height: 5rem;
	padding-left: 1.25rem;
}

.l-header.scrolled .l-header__inner{
  height: 4rem;
}

.l-header__logo {
	max-width: 12.5rem;
	padding: 0;
}

.l-header__menu-button {
	height: 5rem;
	max-width: 5rem;
}

.l-header.scrolled .l-header__menu-button {
  width: 4rem;
  height: 4rem;
}

.l-header__menu-button-line {
	width: 1.875rem;
}

.l-header__menu-button-line::before,
.l-header__menu-button-line::after {
	width: 1.875rem;
}

.l-header__menu-button-line::before {
	bottom: 0.5rem;
}

.l-header__menu-button-line::after {
	top: 0.5rem;
}

.l-header__menu {
	width: 100%;
}

.l-header__menu-content {
	margin: 0 auto;
	padding-left: 0;
	padding-right: 0;
	padding-top: 7.5rem;
	width: 85%;
}

.l-header__menu-nav {
	gap: 1.875rem 0rem;
}

.l-inner.l-inner--r0 {
	padding-right: 0;
}

.l-inner-body {
	max-width: 37.5rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

.l-inner-body.l-inner-body--r0 {
	padding-right: 0;
}

.c-banner__inner {
  width: 90%;
	padding-bottom: 10vw;
	padding-top: 10vw;
}

.c-banner__swiper-container {
  margin-bottom: 1rem;
}

.c-banner__inner .swiper-button-next,
.c-banner__inner .swiper-button-prev {
	display: block;
}


.c-banner .swiper-button-prev,
.c-banner .swiper-rtl .swiper-button-next {
	left: -2.5rem;
}

.c-banner .swiper-button-next,
.c-banner .swiper-rtl .swiper-button-prev {
	right: -2.5rem;
}

.c-heading01__intro {
	font-size: 2rem;
	height: auto;
	margin-bottom: 3.125rem;
	margin-top: -1.875rem;
}

.c-heading01 {
	font-size: clamp(1.5rem, 4.5vw, 2.375rem);
	line-height: 1.9;
}

.c-heading01 br {
	display: none;
}

.c-heading02 {
	font-size: 2.5rem;
}

.c-heading02__sub {
	font-size: 1rem;
}

.c-hero__text {
	bottom: 3.75rem;
	left: 0.75rem;
}

.c-hero__text-image {
	margin-bottom: 1.25rem;
	width: 75vw;
}

.c-hero__text--short {
	left: 0.75rem;
}

.c-hero__title {
	font-size: 3.75rem;
	overflow-wrap: anywhere;
}

.c-hero__subtitle {
	font-size: 1.375rem;
}

.c-hero__image {
	height: 37.5rem;
}

.c-hero__short {
	height: 18.75rem;
}

.c-loop__item-image {
	width: 340vw;
}

.c-news__wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.875rem;
}

.c-news__inner {
  margin: 0 auto;
  width: 74.9vw;
}

.c-news__title-wrap {
	height: 18.75rem;
	padding: 3.125rem;
	width: 100%;
}

.c-news__list-wrap {
	margin-left: 0;
	margin-top: 0;
	width: 100%;
}

.c-news__cat-list {
	gap: 0.3125rem 0.625rem;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}

.c-news__list {
  flex-direction: column;
	gap: 1.25rem 0.9375rem;
}

.c-news__item {
  width: 100%;
}

.c-news__item-date-wrap {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	    -ms-flex-direction: column-reverse;
	        flex-direction: column-reverse;
}

.c-recruit__inner {
	padding-top: 3.125rem;
}

.c-recruit__head-wrap {
	margin-bottom: 3.75rem;
}

.c-recruit__group {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.c-recruit__box {
	margin: 0 auto;
	padding: 3.125rem;
	width: 100%;
}

.c-recruit__btn {
	max-width: 23.75rem;
}

.c-recruit__img {
	width: 100%;
}

.c-sns-nav__list {
	height: 6.25rem;
	padding: 1.25rem;
	width: 4.375rem;
}

.p-company-intro__inner {
	padding-bottom: 3.75rem;
}

.p-company-intro__left {
	max-width: 100%;
	width: 100%;
}

.p-company-intro__right {
	max-width: 100%;
	width: 100%;
}

.p-company-intro__item-title-en {
	font-size: 0.9375rem;
}

.p-company-intro__item-title {
	font-size: 1.25rem;
	margin-bottom: 1.875rem;
}

.p-company-profile__header,
.p-company-profile__desc {
	font-size: 1rem;
}

.p-company-profile__header {
	width: 8.75rem;
}

.p-company-profile__desc {
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 0.3125rem;
	padding: 0.25rem 0rem 0.25rem 1.25rem;
}

.p-company-intro__img {
	margin: 0 auto;
	max-width: 29.0625rem;
}

.p-company-intro__item-lead {
	font-size: 1.125rem;
}

.p-company-intro__list-item {
	font-size: 1rem;
}

.p-company-intro__annotation {
	font-size: 1rem;
}

.p-company-base__inner {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-company-base__item-title {
	font-size: 1.25rem;
}

.p-company-base__head-wrap {
	margin-bottom: 3.125rem;
}

.p-company-base__group {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-company-base__item {
	width: 100%;
}

.p-company-base__map-link {
	font-size: 1rem;
}

.p-company-group__inner {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-company-group__item {
	width: 100%;
}

.p-company-group__item-title {
	font-size: 1.25rem;
}

.p-contact__container {
	width: 100%;
}

.p-contact__box {
	padding: 3.75rem 2.5rem;
}

.p-contact__wrap .top-required,
.p-contact__wrap .required {
	font-size: 0.75rem;
	padding: 0.3125rem 0.375rem;
	white-space: nowrap;
}

.p-contact__wrap .attention {
	font-size: 0.875rem;
}

.p-contact__wrap .p-form {
	display: block;
	padding: 0.625rem 0;
}

.p-contact__wrap .p-form dt {
	background-color: #FFF;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 0.875rem;
	gap: 0.125rem;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	margin-bottom: 0.125rem;
	margin-right: 0;
	padding: 0.625rem;
	width: 100%;
}

.p-contact__wrap .p-form dd {
	width: 100%;
}

.p-contact__wrap .p-form .message > span.required {
	margin-left: 0;
}

.p-contact__wrap .p-form dd input[type=text],
.p-contact__wrap .p-form dd input[type=tel],
.p-contact__wrap .p-form dd input[type=email],
.p-contact__wrap .p-form dd input[type=date],
.p-contact__wrap .p-form dd input[type=number],
.p-contact__wrap .p-form dd #pref,
.p-contact__wrap .p-form dd select,
.p-contact__wrap .p-form dd textarea {
	font-size: 1rem;
	height: 3.3125rem;
	padding: 0.625rem;
	width: 100%;
}

.p-form .job-dd .wpcf7-radio {
	font-size: 1rem;
	padding: 0.625rem;
	width: 100%;
}

.p-contact__wrap .p-form .job-dt {
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-contact__wrap .p-form dd #pref {
	height: 3.05rem;
}

.p-contact__wrap .p-form dd.your-method {
	margin-top: 0.875rem;
}

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item {
	border-radius: 1.125rem;
	height: 2.5rem;
	width: calc(50% - 0.1875rem);
}

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item.first {
	margin-right: 0.375rem;
}

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item-label {
	font-size: 0.875rem;
}

.p-contact__wrap .p-form dd .radio-wrap .wpcf7-list-item-label::before {
	height: 1em;
	width: 1em;
}

.p-contact__wrap .p-form .your-date .date {
	width: 50%;
}

.p-contact__wrap .p-form .your-address #address-text {
	font-size: 0.875rem;
	text-align: left;
}

.p-contact__wrap .pp-lead {
	font-size: 1rem;
	margin-bottom: 0.625rem;
}

.p-contact__wrap .pp-agreeBtn {
	margin-bottom: 1.25rem;
	margin-top: 1.25rem;
}

.p-contact__wrap .pp-agreeBtn .wpcf7-list-item-label {
	font-size: 0.9375rem;
}

.p-contact__wrap .pp-agreeBtn span.wpcf7-list-item-label::before {
	height: 0.9375rem;
	width: 0.9375rem;
}

.p-contact__wrap .attention-btm {
	margin-bottom: 1.25rem;
	margin-top: 0;
}

.p-contact__wrap .attention-btm p {
	font-size: 1rem;
	line-height: 0.8125rem;
}

.p-contact__wrap .contact_send_button_wrap {
	height: 3.75rem;
	width: 100%;
}

.p-contact__wrap .wpcf7-not-valid-tip {
	font-size: 1rem;
}

.p-contact__wrap .p-form dd input[type=radio] {
	width: 0.875rem;
}

.p-contact__wrap .p-contact__pref::before {
	height: 3rem;
	width: 3rem;
}

.p-contact__wrap .p-contact__pref::after {
	height: 0.5625rem;
	right: 1.5625rem;
	width: 0.5625rem;
}

.p-contact__wrap .has-free-text > label {
	width: 4.375rem;
}

.p-contact__wrap .p-form dd .has-free-text .wpcf7-free-text {
	width: calc(100% - 4.375rem);
}

.p-contact-confirm .p-contact__wrap dd {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 1rem;
	padding: 0.625rem;
	width: 100%; /* height: rem(48.8); */
}

.p-contact-confirm .p-contact__wrap .p-form dt.message {
	margin-bottom: 0.125rem;
}

.p-contact-confirm .p-contact__wrap .contact_send_button_wrap {
	margin-top: 1.875rem;
}

.p-contact-confirm .p-contact__wrap .p-form dt {
	padding: 0.625rem;
}

.p-contact-confirm .p-contact__wrap .contact_back {
	font-size: 0.9375rem;
	font-weight: 400;
}

.p-contact-thanks .p-contact-thanks__title {
	font-size: 1.3125rem;
}

.p-contact-thanks .p-contact-thanks__title {
	margin-bottom: 1.875rem;
}

.p-contact-thanks .p-contact-thanks__desc {
	font-size: 0.9375rem;
}

.p-contact-confirm .p-contact__btn__wrap {
	width: 88%;
}

.p-contact-confirm .p-contact__btn__wrap {
	height: 3.75rem;
}

.p-contact__wrap .p-contact-thanks__link__wrap {
	height: 3.75rem;
	margin-bottom: 3.125rem;
}

.p-news-archive__inner {
	padding-bottom: 6.25rem;
}

.p-news-archive__wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 5rem;
}

.p-news-archive__side {
	width: 100%;
}

.p-news-archive__category-link {
	font-size: 0.9375rem;
}

.p-news-archive__group {
	gap: 1.5625rem;
}

.p-news-archive__list {
	gap: 1.5625rem;
}

.p-news-archive__item {
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	width: calc(50% - 3.1407035176rem);
}

.p-news-archive__pagination .page-numbers {
	font-size: 0.9375rem;
	height: 2.5rem;
	width: 2.5rem;
}

.p-news-archive__pagination .page-numbers.prev,
.p-news-archive__pagination .page-numbers.next {
	height: 2.5rem;
	width: 2.5rem;
}

.p-news-single__container {
	padding-bottom: 6.25rem;
	padding-top: 3.75rem;
}

.p-news-single__wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 5rem;
}

.p-news-single__main {
	width: 100%;
}

.p-news-single__head-wrap {
	margin-bottom: 3.75rem;
}

.p-news-single__top {
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.p-news-single__title {
	font-size: 1.5rem;
}

.p-news-single__content h2 {
	font-size: 1.3125rem;
}

.p-news-single__content h3 {
	font-size: 1.1875rem;
	padding: 1.5625rem;
}

.p-news-single__content h4 {
	font-size: 1.125rem;
}

.p-news-single__content blockquote {
	margin-left: 2.5rem;
}

.p-news-single__content blockquote::before {
	left: -2.5rem;
}

.p-news-single__home a {
	padding: 0.71875rem;
	width: 9.375rem;
}

.p-news-side {
	width: 100%;
}

.p-privacy__wrap {
	padding: 3.75rem 1.875rem 0rem;
}

.p-privacy__head-wrap {
	margin-bottom: 3.125rem;
}

.p-privacy__box {
	padding: 2.5rem 1.875rem;
}

.p-privacy__desc {
	font-size: 1rem;
}

.p-privacy__second-title {
	font-size: 1.5625rem;
	margin: 3.75rem auto;
}

.p-privacy__box-group {
	padding: 0 1.875rem;
}

.p-privacy__box-title-wrap {
	margin-bottom: 1.875rem;
}

.p-privacy__box-title {
	font-size: 1.25rem;
}

.p-privacy__box-lead {
	font-size: 1.25rem;
}

.p-service-intro__inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.875rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 3.75rem;
	padding-top: 2.5rem;
	width: 100%;
}

.p-service-intro__text {
	font-size: 1.125rem;
	margin-left: 0;
	max-width: 100%;
	width: 100%;
}

.p-service-intro__image {
	position: relative;
	right: 0;
	top: 0;
	width: 100%;
  margin: 0 auto;
}

.p-service-concept__inner {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-service-concept__title-wrap {
	margin-bottom: 3.75rem;
}

.p-service-concept__container {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-service-concept .p-service-concept__head-wrap {
	margin-bottom: 2.5rem;
}

.p-service-concept__text {
	font-size: 1.125rem;
	margin-bottom: 1.875rem;
	margin-top: 0;
	max-width: 100%;
}

.p-service-concept__text {
	font-size: 1rem;
}

.p-service-concept__list {
	bottom: auto;
	bottom: initial;
	position: static;
	position: initial;
}

.p-service-concept__item {
	height: 40vw;
	padding: 5vw 9vw;
	width: 40vw;
}

.p-service-concept__item:nth-of-type(1) {
	right: 27.5rem;
}

.p-service-concept__item:nth-of-type(2) {
	right: 14.375rem;
	top: 0;
}

.p-service-concept__item:nth-of-type(3) {
	right: 1.25rem;
}

.p-service-concept__image {
	position: static;
	position: initial;
	width: 100%;
}

.p-service-career__list {
  flex-wrap: wrap;
	margin-bottom: 1.875rem;
}

.p-service-career__item-image {
	height: 5rem;
}

.p-service-career__item-title {
	font-size: 1.375rem;
	padding: 3vw 5vw;
}

.p-service-career__item {
  width: calc(50% - 0.3125rem / 2);
}

.current .p-service-career__item-title::before {
  display: none;
	/* border-left: 0.625rem solid transparent;
	border-right: 0.625rem solid transparent;
	border-top: 1.25rem solid #0092E5;
	bottom: -1.25rem; */
}

.p-service-career__title {
	text-stroke: 0.0625rem #0092E5;
	-webkit-text-stroke: 0.0625rem #0092E5;
	font-size: 3.75rem;
	margin-bottom: 1.875rem;
}

.social-it-business .p-service-career__title {
	text-stroke: 0.0625rem #0092E5;
	-webkit-text-stroke: 0.0625rem #0092E5;
}

.career .p-service-career__title {
	text-stroke: 0.0625rem #EA7435;
	-webkit-text-stroke: 0.0625rem #EA7435;
}

.social-infrastructure .p-service-career__title {
	text-stroke: 0.0625rem #3AA528;
	-webkit-text-stroke: 0.0625rem #3AA528;
}

.p-service-career__head-wrap {
	margin: 0;
	width: 100%;
  margin-bottom: 2rem;
}

.p-service-career__head {
	margin: 0;
	width: 100%;
}

.p-service-career__text {
	font-size: 1.125rem;
	margin-bottom: 2.5rem;
	max-width: 100%;
	width: 100%;
}

.p-service-career__image {
	margin-bottom: 1.25rem;
	margin-left: auto;
	margin-right: -1.25rem;
	margin-top: -4.25rem;
	position: relative;
	width: 80vw;
}

.p-service-career__wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-service-career__box-title {
	font-size: 1.375rem;
	max-width: 100%;
}

.p-service-career__box-text {
	font-size: 0.9375rem;
	max-width: 100%;
}

.p-sustainability-list__number-wrap {
	margin-bottom: 1.25rem;
}

.p-sustainability-list__number-cat {
	font-size: 0.75rem;
}

.p-sustainability-list__number {
	font-size: 2.5rem;
}

.p-sustainability-local .p-sustainability-list__number-icon {
	width: 3.75rem;
}

.p-sustainability-human .p-sustainability-list__number-icon {
	width: 3.75rem;
}

.p-sustainability-safety .p-sustainability-list__number-icon {
	width: 3.75rem;
}

.p-sustainability-environment .p-sustainability-list__number-icon {
	width: 3.75rem;
}

.p-sustainability-ease .p-sustainability-list__number-icon {
	width: 3.75rem;
}

.p-sustainability-corporate .p-sustainability-list__number-icon {
	width: 3.75rem;
}

.p-sustainability-intro__wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.875rem;
	width: 100%;
}

.p-sustainability-intro__left {
	margin: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50vw - 50%);
	padding: 1.25rem 1.25rem;
	width: 100vw;
}

.p-sustainability-intro__right {
	margin: 0;
	padding: 0;
}

.p-sustainability-intro__desc {
	font-size: 1.125rem;
	max-width: none;
	width: 100%;
}

.p-sustainability-intro__item-date::before {
	width: 100%;
}

.p-sustainability-intro__item-title {
	font-size: 1.5rem;
}

.p-sustainability-intro__item-desc {
	font-size: 1rem;
}

.p-sustainability-list__inner {
	padding-bottom: 5rem;
	padding-top: 5rem;
}

.p-sustainability-list__head {
	font-size: 2rem;
	margin-bottom: 0.3125rem;
}

.p-sustainability-list__lead {
	font-size: 1.25rem;
}

.p-sustainability-local__list {
	gap: 1.25rem;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.p-sustainability-local__item {
	grid-area: initial;
}

.p-sustainability-local__item:nth-of-type(1) {
	grid-area: initial;
}

.p-sustainability-local__item:nth-of-type(2) {
	grid-area: initial;
}

.p-sustainability-local__item:nth-of-type(3) {
	grid-area: initial;
}

.p-sustainability-local__item:nth-of-type(4) {
	grid-area: initial;
}

.p-sustainability-local__item:nth-of-type(5) {
	grid-area: initial;
}

.p-sustainability-local__item-title {
	font-size: 1.25rem;
	padding: 0.9375rem;
}

.p-sustainability-local__item-sub {
	font-size: 1.125rem;
	padding: 0rem;
}

.p-sustainability-local__item-list {
	padding: 0;
}

.p-sustainability-local__item-list-item {
	font-size: 1rem;
}

.p-sustainability-human__image-wrap {
	gap: 1.25rem;
}

.p-sustainability-human__lead {
	margin-bottom: 0.9375rem;
}

.p-sustainability-human__text {
	font-size: 0.9375rem;
}

.p-sustainability-human__card-tab {
	font-size: 1.125rem;
}

.p-sustainability-human__card-title {
	font-size: 1.125rem;
	padding: 0.9375rem;
}

.p-sustainability-human__card-bottom-text {
	font-size: 0.9375rem;
	padding: 0.9375rem;
}

.p-sustainability-safety__subtitle::before {
	width: 100%;
}

.p-sustainability-safety__item-text {
	font-size: 0.9375rem;
}

.p-sustainability-safety__card-wrap {
	gap: 1.5rem;
}

.p-sustainability-safety__card {
	gap: 0.625rem;
}

.p-sustainability-safety__card-title {
	font-size: 1.375rem;
}

.p-sustainability-safety__card-box {
	padding: 0.9375rem;
}

.p-sustainability-safety__card-box-item {
	font-size: 0.9375rem;
}

.p-sustainability-safety__card-box-item-dot {
	margin-left: 1.25rem;
}

.p-sustainability-environment__item-title {
	font-size: 1.375rem;
	margin-right: 0;
	width: 100%;
}

.p-sustainability-environment__item-title::before {
	width: 100%;
}

.p-sustainability-environment__item-text {
	font-size: 1rem;
}

.p-sustainability-environment__card-wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 2.5rem;
}

.p-sustainability-ease__item-title {
	font-size: 1.375rem;
	margin-right: 0;
}

.p-sustainability-ease__item-title::before {
	width: 100%;
}

.p-sustainability-ease__item-text {
	font-size: 1rem;
}

.p-sustainability-ease__card-wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 2.5rem;
}

.p-sustainability-ease__group {
	gap: 1.25rem;
	margin-bottom: 1.875rem;
}

.p-sustainability-ease__group-title {
	font-size: 1.375rem;
}

.p-top-fv__title {
	gap: 0.625rem;
	right: 5%;
	top: 14%;
}

.p-top-fv__title-text {
	font-size: clamp(2rem, 8.5vw, 3.125rem);
}

.p-top-fv__title-en {
	bottom: calc(7.5rem + 6rem);
	left: 1.875rem;
}

.p-top-fv__title-en-text {
	font-size: clamp(2rem, 7.5vw, 3rem);
}

.p-top-about__tab-list {
  flex-wrap: wrap;
	bottom: -0.625rem;
	padding-bottom: 0.625rem;
  gap: 0.1875rem;
}

.p-top-about__tab-button {
  width: calc(50% - 0.1875rem / 2);
	height: 6.25rem;
}

.p-top-about__tab-button.p-top-about__tab-button--recruit.current::before {
	border-top: 0.625rem solid #FF6784;
}

.p-top-about__tab-button.current::before {
  display: none;
	/* border-left: 0.46875rem solid transparent;
	border-right: 0.46875rem solid transparent;
	border-top: 0.625rem solid #0092E5;
	bottom: -0.625rem; */
}

.p-top-about__tab-button-head {
	font-size: clamp(1.125rem, 2.8vw, 1.375rem);
}

.p-top-about__tab-button-sub {
	font-size: clamp(0.75rem, 2vw, 1rem);
}

.p-top-business__content-block {
	margin-bottom: 3.125rem;
	margin-top: -8vw;
	position: relative;
	width: 80vw;
}

.p-top-business__content-block-text {
	font-size: 1rem;
	line-height: 2;
}

.p-top-business__content-bg {
	margin-left: auto;
	position: relative;
	width: 80vw;
}

.p-top-business__head-wrap {
	margin-left: 3vw;
	margin-top: 0;
	width: calc(100% - 3vw);
}

.p-top-business__head {
	font-size: 2.5rem;
}

.p-top-business__sub {
	font-size: 1.25rem;
}

.p-top-business__content-image {
	margin-top: 0;
	width: 55vw;
}

.p-top-business__list {
  display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
  /* margin-top: 0; */
}

.p-top-business__item {
	width: 100%;
}

.p-top-business__item:nth-of-type(3n - 2) {
	margin-top: 0rem;
}

.p-top-business__item:nth-of-type(3n - 1) {
	margin-top: 0rem;
}

.p-top-business__item:nth-of-type(3n) {
	margin-top: 0rem;
}

.p-top-business__item-tag {
	font-size: 0.9375rem;
}

.p-top-business__item-text-wrap {
	padding: 2.375rem 1.5625rem;
}

.p-top-business__item-head {
	font-size: 1.25rem;
}

.p-top-business__item-text {
	font-size: 0.9375rem;
}

.p-top-business__item-sub-text {
	font-size: 0.8125rem;
}

.p-top-recruit__intro-inner {
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.p-top-recruit__text {
	font-size: 1rem;
	text-align: justify;
}

.p-top-recruit__text {
	font-size: 0.9375rem;
}

.p-top-recruit__sns {
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.p-top-recruit__sns-wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-top-recruit__sns-x {
	width: 100%;
}

.p-top-recruit__sns-qr-wrap {
  display: none;
}

.p-vision__head-wrap {
	margin-bottom: 3.125rem;
}

.p-vision-ceo__inner {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-vision-ceo__text {
	font-size: 1.125rem;
}

.p-vision-ceo__group {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 3.125rem;
}

.p-vision-ceo__right {
	max-width: 100%;
}

.p-vision-ceo__text-name {
	font-size: 2.5rem;
}

.p-vision-principle__inner {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-vision-principle__text {
	font-size: 1rem;
}

.p-vision-principle__list {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.875rem;
}

.p-vision-principle__item {
	padding: 1.125rem 1.875rem 1.875rem 11.25rem;
	width: 100%;
}

.p-vision-principle__item-number {
	font-size: 2.5rem;
	height: 3.75rem;
	width: 7.5rem;
}

.p-vision-principle__item-title {
	font-size: 1.5rem;
}

.p-vision-principle__item-text {
	font-size: 1rem;
}

.p-vision-principle__arrow {
	max-width: 6.25rem;
}

.p-vision-principle__btn {
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	padding: 1.875rem 3.125rem;
}

.p-vision-management__inner {
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.p-vision-management__head-wrap {
	margin-bottom: 3.75rem;
}

.p-vision-management__group {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-vision-management__left {
	max-width: 100%;
}

.p-vision-management__right {
	max-width: 100%;
}

.p-vision-management__item-title {
	font-size: 1.75rem;
}

.p-vision-management__item-text {
	font-size: 1rem;
}

.p-vision-management__item-lead {
	font-size: 1.125rem;
}

.p-vision-management__item-text--bold {
	font-size: 1rem;
}

.p-works-archive__text {
	font-size: 0.9375rem;
	line-height: 2;
	text-align: left;
}

.p-works-archive__categorys {
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.p-works-archive__category {
	width: calc(50% - 0.125rem);
}

.p-works-archive__category a {
	font-size: 0.9375rem;
}

.p-works-archive__category a {
	font-size: 0.875rem;
}

.p-works-archive__lists {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-works-archive__list {
	width: 100%;
}

.p-works-archive__list-top-example {
	font-size: 0.9375rem;
}

.p-works-archive__list-top-small {
	font-size: 0.8125rem;
}

.p-works-archive__list-category {
	font-size: 1rem;
}

.p-works-archive__list-title {
	font-size: 1.5rem;
}

.p-works-archive__list-text {
	font-size: 0.9375rem;
}

.p-works-archive__pagination .page-numbers {
	font-size: 0.9375rem;
	height: 2.5rem;
	width: 2.5rem;
}

.p-works-archive__pagination .page-numbers.prev,
.p-works-archive__pagination .page-numbers.next {
	height: 2.5rem;
	width: 2.5rem;
}

.p-works-single__head-wrap {
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.p-works-single__client-wrap {
	margin-bottom: 2.5rem;
}

.p-works-single__meta-desc {
	font-size: 0.9375rem;
}

.p-works-single__group-container {
	margin-bottom: 5rem;
}

.p-works-single__group {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.875rem;
}

.p-works-single__group-text-wrap {
	max-width: 100%;
	width: 100%;
}

.p-works-single__logo {
	width: 12.5rem;
}

.p-works-single__client-name {
	font-size: 1.75rem;
}

.p-works-single__content-title {
	font-size: 1.625rem;
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-area: 1/1/2/2;
	margin-top: 0;
	max-width: 100%;
}

.p-works-single__content-text-wrap-small-head {
	font-size: 1.25rem;
}

.p-works-single__content-img-caption {
	font-size: 0.9375rem;
}

.p-works-single__content-text {
	font-size: 0.9375rem;
}

.p-works-single__content-img {
	max-width: 100%;
	width: 100%;
}

.p-works-products-single__client-name {
	margin-bottom: 3.75rem;
}

.p-works-products-single__content-img {
	margin-bottom: 0rem;
}

.u-hidden-pc {
	display: block;
}

.u-hidden-pc-ib {
	display: inline-block;
}

.u-hidden-sp {
	display: none;
}

.u-hidden-sp-i {
	display: none;
}

.u-hidden-sp-ib {
	display: none;
}

.u-hidden-pc-f {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.u-hidden-sp-f {
	display: none;
}

}

@media (max-width: 660px) {

.contact-desc-br {
	display: none;
}

}

@media screen and (max-width: 600px) {

.c-news__list {
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	gap: 1.25rem 0.9375rem;
}

.c-news__item {
	width: 100%;
}

}

@media screen and (max-width: 550px) {

.p-service-concept__image {
	margin: 0 auto;
	max-width: 21.875rem;
}

}

@media (max-width: 510px) {

.contact-msg-br {
	display: none;
}

}

@media screen and (max-width: 500px) {

.l-footer__nav-block {
	width: calc(50% - 0.9375rem);
}

.p-contact-confirm .p-contact__btn__wrap {
	gap: 1.25rem;
	height: auto;
}

.p-contact-confirm .p-contact__wrap .contact_send_button {
	height: 3.125rem;
}

.p-contact-confirm .p-contact__wrap .p-contact__previous {
	height: 3.125rem;
}

}

@media screen and (max-width: 420px) {

.c-heading-anime__bg {
	display: none;
}

.c-heading-anime__text {
  line-height: 2;
}

.l-footer__nav {
	margin-bottom: 6.25rem;
}

.l-footer__nav-wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 1.875rem 0.9375rem;
}

.l-footer__nav-block {
	width: calc(50% - 0.625rem);
}

.l-footer__nav-title {
	font-size: 1rem;
}

.l-footer__nav-list li {
	margin-bottom: 0.3125rem;
}

.l-footer__btn-wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.l-footer .l-footer__btn {
	font-size: 1rem;
}

.l-footer__access {
	font-size: 0.875rem;
}

.l-header__menu-button-line {
	width: 1.5625rem;
}

.l-header__menu-button-line::before,
.l-header__menu-button-line::after {
	width: 1.5625rem;
}

.l-header__menu-button-line::before {
	bottom: 0.4375rem;
}

.l-header__menu-button-line::after {
	top: 0.4375rem;
}

.l-header__menu-content {
	padding-top: 6.25rem;
}

.l-header__menu-logo {
  max-width: 14rem;
	margin-bottom: 2.5rem;
}

.l-inner {
	max-width: 37.5rem;
}

.c-banner__inner {
	padding-bottom: 1.875rem;
	padding-top: 1.875rem;
	width: 100%;
}

.c-banner__swiper-container {
  margin-bottom: .75rem;
}

.c-banner__list{
  /* flex-wrap: wrap;
  gap: 0.625rem; */
}


.c-banner__item{
  width: calc(50% - 0.625rem / 2) !important;
}

.c-banner .swiper-button-prev,
.c-banner .swiper-rtl .swiper-button-next {
	left: -2.5rem;
}

.c-banner .swiper-button-next,
.c-banner .swiper-rtl .swiper-button-prev {
	right: -2.5rem;
}

.c-banner .swiper-button-prev,
.c-banner .swiper-button-next {
	display: none;
}

.c-heading01__container {
	display: inline-block;
}

.c-heading01__container--sp-p-none{
  padding: 0;
}

.c-heading01 {
	font-size: 1.375rem;
	line-height: 1.9;
	margin-right: 0rem;
}

.c-heading02 {
	font-size: 2.25rem;
	line-height: 1.2;
}

.c-heading02__sub {
	font-size: 0.875rem;
}

.c-hero__text-image {
	margin-bottom: 0.625rem;
	width: 87%;
}

.c-hero__title {
	font-size: 2.625rem;
}

.c-hero__subtitle {
	font-size: 1rem;
}

.c-hero__image {
	height: 31.25rem;
}

.c-hero__short {
	height: 12.5rem;
}

.c-loop__item-image {
	width: 500vw;
}

.c-news__inner {
  width: 100%;
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.c-news__title-wrap {
	height: 12.5rem;
	margin: 0 calc(50% - 50vw);
	padding: 1.5625rem 1.25rem;
	width: 100vw;
}

.c-recruit__inner {
	padding-top: 3.125rem;
}

.c-recruit__head-wrap {
	margin-bottom: 3.125rem;
}

.c-recruit__box {
	padding: 2.5rem 1.25rem;
}

.c-sns-nav__list {
	height: 5.9375rem;
	width: 3.4375rem;
}

.p-company-intro__inner {
	padding-bottom: 3.125rem;
}

.p-company-intro__item-title-en {
	font-size: 0.875rem;
}

.p-company-intro__item-title {
	font-size: 1.125rem;
}

.p-company-profile__header,
.p-company-profile__desc {
	font-size: 0.9375rem;
	padding: 0.25rem 0.3125rem;
}

.p-company-profile__header {
	width: 7.1875rem;
}

.p-company-profile__desc {
	padding: 0.25rem 0rem 0.25rem 1.25rem;
}

.p-company-intro__item-lead {
	font-size: 1rem;
}

.p-company-intro__list-item {
	font-size: 0.9375rem;
}

.p-company-intro__annotation {
	font-size: 0.9375rem;
}

.p-company-base__inner {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-company-base__item-title {
	font-size: 1.125rem;
}

.p-company-base__head-wrap {
	margin-bottom: 2.5rem;
}

.p-company-base__map-link {
	font-size: 0.9375rem;
}

.p-company-group__inner {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-company-group__item-title {
	font-size: 1.125rem;
}

.p-contact__box {
	padding: 2.5rem 1.5625rem;
}

.contact__annotation-head {
	font-size: 1rem;
}

.p-contact-thanks .p-contact-thanks__title {
	font-size: 1.125rem;
}

.p-contact-confirm .p-contact__btn__wrap {
	bottom: -6.25rem;
	width: 90%;
}

.p-news-archive__inner {
	padding-bottom: 3.75rem;
}

.p-news-archive__category-list {
	gap: 0.1875rem;
}

.p-news-archive__category-item {
	/* width: 6.25rem; */
}

.p-news-archive__category-link {
	font-size: 0.875rem;
}

.p-news-archive__list {
	margin-bottom: 2.5rem;
}

.p-news-archive__item {
	width: 100%;
}

.p-news-archive__pagination .page-numbers {
	font-size: 0.8125rem;
	height: 2.1875rem;
	width: 2.1875rem;
}

.p-news-archive__pagination .page-numbers.prev,
.p-news-archive__pagination .page-numbers.next {
	height: 2.1875rem;
	width: 2.1875rem;
}

.p-news-single__container {
	padding-bottom: 3.75rem;
	padding-top: 3.125rem;
}

.p-news-single__head-wrap {
	margin-bottom: 3.125rem;
}

.p-news-single__title {
	font-size: 1.25rem;
}

.p-news-single__content {
	margin-bottom: 2.5rem;
}

.p-news-single__content h2,
.p-news-single__content h3,
.p-news-single__content h4 {
	margin: 1.25rem 0;
}

.p-news-single__content h2 {
	font-size: 1.25rem;
}

.p-news-single__content h3 {
	font-size: 1.125rem;
	padding: 0.9375rem;
}

.p-news-single__content h4 {
	font-size: 1rem;
	padding-left: 0.9375rem;
}

.p-news-single__content p {
	margin: 0.625rem 0;
}

.p-news-single__content ol {
	margin: 1.25rem 0;
}

.p-news-single__content ul {
	margin: 1.25rem 0;
}

.p-news-single__content blockquote {
	margin-left: 1.875rem;
	padding: 1.25rem;
}

.p-news-single__content blockquote::before {
	left: -1.875rem;
}

.p-news-single__share {
	margin-bottom: 2.5rem;
}

.p-news-single__share p {
	margin-bottom: 1.5625rem;
}

.p-news-single__navigation {
	margin-top: 2.5rem;
}

.p-news-single__home a {
	padding: 0.5625rem;
	width: 7.5rem;
}

.p-privacy__wrap {
	padding: 2.5rem 1.25rem 0rem;
}

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

.p-privacy__box {
	padding: 1.875rem 1.25rem;
}

.p-privacy__desc {
	font-size: 0.9375rem;
}

.p-privacy__second-title {
	font-size: 1.25rem;
	margin: 2.5rem auto;
}

.p-privacy__box-group {
	padding: 0 0.625rem;
}

.p-privacy__box-title-wrap {
	margin-bottom: 1.25rem;
}

.p-privacy__box-title {
	font-size: 1.125rem;
}

.p-privacy__box-lead {
	font-size: 1.125rem;
}

.p-service-intro__inner {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-service-intro__text {
	font-size: 1rem;
	line-height: 1.9;
}

.p-service-concept__inner {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-service-concept__title-wrap {
	margin-bottom: 1.875rem;
}

.p-service-concept__container {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-service-career__item-image {
	height: 3.75rem;
}

.p-service-career__item-title {
	font-size: 1rem;
}

.p-service-career__item {
	width: 100%;
}

.p-service-career__title {
	font-size: 2.5rem;
}

.p-service-career__text {
	font-size: 1rem;
}

.p-service-career__wrap {
	-ms-grid-columns: (1fr)[1];
	grid-template-columns: repeat(1, 1fr);
}

.p-service-career__wrap-3 {
	-ms-grid-columns: (1fr)[1];
	grid-template-columns: repeat(1, 1fr);
}

.p-service-career__box-title {
	font-size: 1.25rem;
}

.p-sustainability-list__number {
	font-size: 2rem;
}

.p-sustainability-local .p-sustainability-list__number-icon {
	width: 3.125rem;
}

.p-sustainability-human .p-sustainability-list__number-icon {
	width: 3.125rem;
}

.p-sustainability-safety .p-sustainability-list__number-icon {
	width: 3.125rem;
}

.p-sustainability-environment .p-sustainability-list__number-icon {
	width: 3.125rem;
}

.p-sustainability-ease .p-sustainability-list__number-icon {
	width: 3.125rem;
}

.p-sustainability-corporate .p-sustainability-list__number-icon {
	width: 3.125rem;
}

.p-sustainability-intro__desc {
	font-size: 1rem;
}

.p-sustainability-intro__item-title {
	font-size: 1.375rem;
}

.p-sustainability-intro__item-desc {
	font-size: 0.9375rem;
}

.p-sustainability-list__inner {
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

.p-sustainability-list__head {
	font-size: 1.5rem;
}

.p-sustainability-list__lead {
	font-size: 1.0625rem;
}

.p-sustainability-local__item-title {
	font-size: 1.125rem;
}

.p-sustainability-local__item-sub {
	font-size: 1rem;
}

.p-sustainability-local__item-list-item {
	font-size: 0.9375rem;
}

.p-sustainability-human__image-wrap {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-sustainability-human__card-wrap {
	-ms-grid-columns: (1fr)[1];
	grid-template-columns: repeat(1, 1fr);
}

.p-sustainability-human__card-tab {
	font-size: 1rem;
}

.p-sustainability-human__card-title {
	font-size: 1rem;
	padding: 0.75rem;
}

.p-sustainability-human__card-bottom-text {
	padding: 0.75rem;
}

.p-sustainability-safety__list {
	gap: 0.75rem;
}

.p-sustainability-safety__item {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 0.375rem;
}

.p-sustainability-safety__item-title {
	width: 100%;
}

.p-sustainability-safety__card {
	gap: 0.375rem;
}

.p-sustainability-safety__card-title {
	font-size: 1.25rem;
}

.p-sustainability-safety__card-box {
	padding: 0.75rem;
}

.p-sustainability-environment__item-title {
	font-size: 1.25rem;
}

.p-sustainability-environment__item-text {
	font-size: 0.9375rem;
}

.p-sustainability-ease__item-title {
	font-size: 1.25rem;
}

.p-sustainability-ease__item-text {
	font-size: 0.9375rem;
}

.p-sustainability-ease__group {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.p-sustainability-ease__group-title {
	font-size: 1.25rem;
}

.p-top-fv__title {
	top: 15%;
}

.p-top-fv__title-text {
	font-size: clamp(2rem, 8.5vw, 2.8125rem);
}

.p-top-fv__title-en {
	left: 1.25rem;
}

.p-top-fv__title-en-text {
	font-size: clamp(1.75rem, 7.5vw, 2.5rem);
}

.p-top-business__content-block {
	width: 90vw;
}

.p-top-business__content-block-text {
	font-size: 0.9375rem;
}

.p-top-business__content-bg {
	width: 90vw;
}

.p-top-business__head-wrap {
	margin-bottom: 1.25rem;
}

.p-top-business__head {
	font-size: 1.875rem;
}

.p-top-business__sub {
	font-size: 1rem;
}

.p-top-business__content-image {
	margin-left: 0;
	width: 100%;
}

.p-top-business__list {
	width: 100%;
}

.p-top-business__item-tag {
	font-size: 0.875rem;
}

.p-top-business__item-text-wrap {
	padding: 1.25rem;
}

.p-top-business__item-head {
	font-size: 1.1875rem;
}

.p-top-business__item-sub-text {
	font-size: 0.75rem;
}

.p-top-recruit__sns {
	padding-bottom: 3.125rem;
	padding-top: 3.125rem;
}

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

.p-vision-ceo__inner {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-vision-ceo__text {
	font-size: 1rem;
}

.p-vision-ceo__text-name {
	font-size: 1.875rem;
}

.p-vision-principle__inner {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-vision-principle__text {
	font-size: 0.9375rem;
}

.p-vision-principle__list {
	gap: 1.25rem;
}

.p-vision-principle__item {
	padding: 4.375rem 1.25rem 1.875rem 1.25rem;
}

.p-vision-principle__item-number {
	font-size: 1.875rem;
	height: 3.125rem;
	width: 6.25rem;
}

.p-vision-principle__item-title {
	font-size: 1.25rem;
}

.p-vision-principle__item-text {
	font-size: 0.9375rem;
}

.p-vision-principle__arrow {
	max-width: 5rem;
}

.p-vision-management__inner {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.p-vision-management__head-wrap {
	margin-bottom: 2.5rem;
}

.p-vision-management__item-title {
	font-size: 1.5rem;
}

.p-vision-management__item-text {
	font-size: 0.9375rem;
}

.p-vision-management__item-lead {
	font-size: 1.0625rem;
	width: 7.5rem;
}

.p-vision-management__item-text--bold {
	font-size: 0.9375rem;
}

.p-works-archive__list-top-caetgory {
	margin-right: 1.25rem;
}

.p-works-archive__list-top-caetgory::before {
	right: -1.25rem;
	width: 1.25rem;
}

.p-works-archive__list-top-example {
	font-size: 0.875rem;
}

.p-works-archive__list-top-small {
	font-size: 0.75rem;
}

.p-works-archive__list-category {
	font-size: 0.9375rem;
}

.p-works-archive__list-title {
	font-size: 1.25rem;
}

.p-works-archive__pagination .page-numbers {
	font-size: 0.8125rem;
	height: 2.1875rem;
	width: 2.1875rem;
}

.p-works-archive__pagination .page-numbers.prev,
.p-works-archive__pagination .page-numbers.next {
	height: 2.1875rem;
	width: 2.1875rem;
}

.p-works-single__meta-cat {
	margin-right: 1.25rem;
}

.p-works-single__meta-cat::before {
	right: -1.25rem;
	width: 1.25rem;
}

.p-works-single__group-container {
	margin-bottom: 3.75rem;
}

.p-works-single__logo {
	width: 9.375rem;
}

.p-works-single__client-name {
	font-size: 1.25rem;
}

.p-works-single__content-title {
	font-size: 1.375rem;
	margin-bottom: 1.875rem;
}

.p-works-single__content-text-wrap-small-head {
	font-size: 1.125rem;
}

.p-works-single__content-img-caption {
	font-size: 0.875rem;
}

.p-works-single__content-text {
	margin-bottom: 1.875rem;
}

.p-works-products-single__client-name {
	margin-bottom: 2.5rem;
}

.u-hidden-pc-only {
	display: block;
}
.p-contact-thanks__br {
	display: none;
}

}

@media (max-width: 420px) {

.p-contact__wrap .pp-agreeBtn {
	text-align: left;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

@-webkit-keyframes bounceInUp {

0% {
	opacity: 0;
	-webkit-transform: translateY(400px);
	        transform: translateY(400px);
}

60% {
	-webkit-transform: translateY(-30px);
	        transform: translateY(-30px);
}

80% {
	-webkit-transform: translateY(10px);
	        transform: translateY(10px);
}

100% {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

}

@keyframes bounceInUp {

0% {
	opacity: 0;
	-webkit-transform: translateY(400px);
	        transform: translateY(400px);
}

60% {
	-webkit-transform: translateY(-30px);
	        transform: translateY(-30px);
}

80% {
	-webkit-transform: translateY(10px);
	        transform: translateY(10px);
}

100% {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

}

@-webkit-keyframes animate-svg-stroke-1 {

0% {
	stroke-dashoffset: 23.0335826874px;
	stroke-dasharray: 23.0335826874px;
}

100% {
	stroke-dashoffset: 46.0671653748px;
	stroke-dasharray: 23.0335826874px;
}

}

@keyframes animate-svg-stroke-1 {

0% {
	stroke-dashoffset: 23.0335826874px;
	stroke-dasharray: 23.0335826874px;
}

100% {
	stroke-dashoffset: 46.0671653748px;
	stroke-dasharray: 23.0335826874px;
}

}

@-webkit-keyframes animate-svg-stroke-2 {

0% {
	stroke-dashoffset: 60px;
	stroke-dasharray: 60px;
}

100% {
	stroke-dashoffset: 120px;
	stroke-dasharray: 60px;
}

}

@keyframes animate-svg-stroke-2 {

0% {
	stroke-dashoffset: 60px;
	stroke-dasharray: 60px;
}

100% {
	stroke-dashoffset: 120px;
	stroke-dasharray: 60px;
}

}

@-webkit-keyframes animate-svg-stroke-3 {

0% {
	stroke-dashoffset: 158.6883544922px;
	stroke-dasharray: 158.6883544922px;
}

100% {
	stroke-dashoffset: 317.3767089844px;
	stroke-dasharray: 158.6883544922px;
}

}

@keyframes animate-svg-stroke-3 {

0% {
	stroke-dashoffset: 158.6883544922px;
	stroke-dasharray: 158.6883544922px;
}

100% {
	stroke-dashoffset: 317.3767089844px;
	stroke-dasharray: 158.6883544922px;
}

}

@-webkit-keyframes animate-svg-stroke-4 {

0% {
	stroke-dashoffset: 36.365070343px;
	stroke-dasharray: 36.365070343px;
}

100% {
	stroke-dashoffset: 72.730140686px;
	stroke-dasharray: 36.365070343px;
}

}

@keyframes animate-svg-stroke-4 {

0% {
	stroke-dashoffset: 36.365070343px;
	stroke-dasharray: 36.365070343px;
}

100% {
	stroke-dashoffset: 72.730140686px;
	stroke-dasharray: 36.365070343px;
}

}

@-webkit-keyframes animate-svg-fill-4 {

0% {
	fill: transparent;
}

}

@keyframes animate-svg-fill-4 {

0% {
	fill: transparent;
}

}

@-webkit-keyframes animate-svg-stroke-5 {

0% {
	stroke-dashoffset: 38.836063385px;
	stroke-dasharray: 38.836063385px;
}

100% {
	stroke-dashoffset: 77.67212677px;
	stroke-dasharray: 38.836063385px;
}

}

@keyframes animate-svg-stroke-5 {

0% {
	stroke-dashoffset: 38.836063385px;
	stroke-dasharray: 38.836063385px;
}

100% {
	stroke-dashoffset: 77.67212677px;
	stroke-dasharray: 38.836063385px;
}

}

@-webkit-keyframes animate-svg-fill-5 {

0% {
	fill: transparent;
}

}

@keyframes animate-svg-fill-5 {

0% {
	fill: transparent;
}

}

@-webkit-keyframes animate-svg-stroke-6 {

0% {
	stroke-dashoffset: 48.9375953674px;
	stroke-dasharray: 48.9375953674px;
}

100% {
	stroke-dashoffset: 97.8751907349px;
	stroke-dasharray: 48.9375953674px;
}

}

@keyframes animate-svg-stroke-6 {

0% {
	stroke-dashoffset: 48.9375953674px;
	stroke-dasharray: 48.9375953674px;
}

100% {
	stroke-dashoffset: 97.8751907349px;
	stroke-dasharray: 48.9375953674px;
}

}

@-webkit-keyframes animate-svg-fill-6 {

0% {
	fill: transparent;
}

}

@keyframes animate-svg-fill-6 {

0% {
	fill: transparent;
}

}

@-webkit-keyframes scroll {

0% {
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

100% {
	-webkit-transform: translateX(-100%);
	        transform: translateX(-100%);
}

}

@keyframes scroll {

0% {
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

100% {
	-webkit-transform: translateX(-100%);
	        transform: translateX(-100%);
}

}

