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

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

html {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

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

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

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

a {
  cursor: pointer;
  text-decoration: none;
}

/* === color === */

/* === font-family === */

/* === レイアウト === */

/* === ブレークポイント === */

/* === box-shadow === */

/* === 重なり順の定義 === */

/* === pxをremに変換 === */

body {
  background: #fff;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
}

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

a {
  color: inherit;
  display: block;
  height: 100%;
  width: 100%;
}

.l-wrapper {
  overflow: hidden;
}

.l-inner {
  box-sizing: content-box;
  margin: 0 auto;
  max-width: 880px;
  padding: 0 32px;
}

/* 最大値なし l-header__inner */

.l-header__inner {
  display: flex;
  height: 100%;
  max-width: 100%;
  padding: 0 32px;
}

/* 最大値なし l-footer__inner */

.l-footer__inner {
  align-items: center;
  display: flex;
  gap: calc(16 / 16 * 1rem);
  justify-content: center;
  max-width: 100%;
  padding: 0 32px;
}

.l-header {
  background: #fff;
  height: 80px;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}

/* のちほど修正 */

.l-top-page__fv {
  background: rgba(204, 204, 204, 0.25);
  height: calc(500 / 16 * 1rem);
  width: 100%;
}

.l-section {
  width: 100%;
}

/* トップページ news */

.l-top-page_news__section {
  padding-bottom: calc(8 / 16 * 1rem);
  padding-top: calc(27 / 16 * 1rem);
}

/* トップページ business-introduction */

.l-top-page_business-introduction__section {
  padding-bottom: calc(15 / 16 * 1rem);
  padding-top: calc(10 / 16 * 1rem);
}

/* トップページ business-introduction */

.l-top-page_work-introduction__section {
  padding-bottom: calc(4 / 16 * 1rem);
  padding-top: calc(23 / 16 * 1rem);
}

/* トップページ company-info */

.l-top-page_company-info__section {
  padding-bottom: calc(12 / 16 * 1rem);
  padding-top: calc(12 / 16 * 1rem);
}

/* トップページ research-center */

.l-top-page_research-center__section {
  padding-bottom: calc(20 / 16 * 1rem);
  padding-top: calc(20 / 16 * 1rem);
}

/* トップページ careers */

.l-top-page_careers__section {
  padding-bottom: calc(26 / 16 * 1rem);
  padding-top: calc(29 / 16 * 1rem);
}

/* 会社情報ページ ご挨拶 */

.l-company-info-page_greeting__section {
  padding-bottom: calc(12 / 16 * 1rem);
  padding-top: calc(8 / 16 * 1rem);
}

/* 会社情報ページ 会社概要 */

.l-company-info-page_overview__section {
  padding-bottom: calc(12 / 16 * 1rem);
  padding-top: calc(12 / 16 * 1rem);
}

/* 会社情報ページ 事業所所在地 */

.l-company-info-page_address__section {
  padding-bottom: calc(12 / 16 * 1rem);
  padding-top: calc(12 / 16 * 1rem);
}

/* 採用情報ページ 新規採用募集要項 */

.l-careers-page_new-grad-job__section {
  padding-bottom: calc(43 / 16 * 1rem);
  padding-top: calc(35 / 16 * 1rem);
}

/* 採用情報ページ 中途採用募集要項 */

.l-careers-page_mid-careers-job__section {
  padding-bottom: calc(22 / 16 * 1rem);
  padding-top: calc(32 / 16 * 1rem);
}

/* 採用情報ページ インターンシップ情報 */

.l-careers-page_internship__section {
  padding-bottom: calc(40 / 16 * 1rem);
  padding-top: calc(22 / 16 * 1rem);
}

.l-footer {
  width: 100%;
}

.p-footer__bottom {
  align-items: center;
  background: #fff;
  display: flex;
  height: 43px;
  justify-content: center;
  width: 100%;
}

.p-copyright {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}

.l-drawer {
  align-items: center;
  background: #d9d9d9;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  transform: translateX(105%);
  transition: all 0.5s ease 0s;
  width: 100%;
  z-index: 200;
}

.l-drawer.is-active {
  transform: translateX(0%);
}

.p-drawer__cont {
  display: flex;
  flex-direction: column;
}

.p-drawer-nav__list {
  display: flex;
  flex-direction: column;
  gap: calc(24 / 16 * 1rem);
}

.p-drawer-nav-item__link {
  display: block;
  font-weight: bold;
  height: 100%;
  letter-spacing: 1.04px;
  line-height: 2.5;
  padding-left: calc(16 / 16 * 1rem);
  position: relative;
  transition: all 0.5s ease 0s;
  width: 100%;
}

.p-drawer-nav-item__link::before {
  background: #fff;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: calc(8 / 16 * 1rem);
}

.c-section__title {
  font-size: calc(16 / 16 * 1rem);
  font-weight: 900;
  line-height: 2.5;
  padding-left: calc(24 / 16 * 1rem);
  position: relative;
}

.c-section__title::before {
  background: #ccc;
  content: "";
  height: calc(40 / 16 * 1rem);
  left: 0;
  position: absolute;
  top: 0;
  width: calc(8 / 16 * 1rem);
}

/* トップページ */

.l-top-page_research-center__section .c-section__title {
  display: inline-block;
}

/* 企業紹介ページ */

#business-introduction-page_work02 {
  margin-top: calc(26 / 16 * 1rem);
}

#business-introduction-page_work03 {
  margin-top: calc(26 / 16 * 1rem);
}

#business-introduction-page_work04 {
  margin-top: calc(26 / 16 * 1rem);
}

/* 社員紹介ページ */

.l-staff-introduction-page .c-section__title {
  margin-top: calc(31 / 16 * 1rem);
}

/* 社員個別ページ */

/* 会社情報ページ */

/* 研修センターページ */

/* 採用情報ページ */

/* 決算公告ページ */

.c-section__lead {
  font-size: calc(32 / 16 * 1rem);
  font-weight: bold;
}

/* トップページの事業紹介セクション内のリード文 */

/* トップページの会社案内セクション内のリード文 */

.l-top-page_company-info__section .c-section__lead {
  margin-top: calc(7 / 16 * 1rem);
  padding-left: calc(22 / 16 * 1rem);
}

/* トップページの研修センター内のリード文 */

.p-top-page_research-center__block .c-section__lead {
  margin-top: calc(8 / 16 * 1rem);
  padding-left: calc(11 / 16 * 1rem);
}

/* トップページの採用情報内のリード文 */

.p-top-page_careers__block .c-section__lead {
  padding-left: calc(15 / 16 * 1rem);
}

.c-btn {
  margin-top: calc(49 / 16 * 1rem);
}

.c-btn__link {
  align-items: center;
  background: #000;
  color: rgba(255, 255, 255, 0.93);
  display: flex;
  gap: calc(16 / 16 * 1rem);
  height: 100%;
  justify-content: center;
  margin-left: auto;
  max-width: 100%;
  padding: calc(19 / 16 * 1rem) calc(24 / 16 * 1rem);
  transition: all 0.5s ease 0s;
  width: calc(225 / 16 * 1rem);
}

.c-btn__link span {
  border-bottom: calc(1 / 16 * 1rem) solid rgba(204, 204, 204, 0.45);
}

.c-btn-icon {
  height: calc(24 / 16 * 1rem);
  width: calc(24 / 16 * 1rem);
}

.c-btn-arrow-icon {
  height: calc(12 / 16 * 1rem);
  width: calc(6 / 16 * 1rem);
}

/* トップページの研修センター内のボタン */

.p-top-page_research-center__block .c-btn {
  margin-top: calc(11 / 16 * 1rem);
}

/* トップページの採用情報内のボタン */

.l-top-page_careers__section .c-btn {
  margin-top: calc(19 / 16 * 1rem);
}

/* 会社情報ページ 事業所所在地 Mapを見るボタン */

.l-company-info-page .c-btn {
  margin-top: 0;
}

.l-company-info-page .c-btn__link {
  width: calc(191 / 16 * 1rem);
}

/* 研修センターページ YouTubeで知るボタン*/

.l-research-center-page .c-btn {
  margin-top: calc(38 / 16 * 1rem);
}

.l-research-center-page .c-btn__link {
  margin-right: calc(12 / 16 * 1rem);
}

/* 採用情報ページ 代表からのメッセージ */

/* 採用情報ページ お問い合わせボタン */

.l-careers-page .c-btn {
  margin-top: 0;
}

.c-btn.p-sp-careers-page_job__btn {
  margin-top: calc(18 / 16 * 1rem);
}

.p-logo a {
  align-items: center;
  display: flex;
  transition: all 0.5s ease 0s;
}

.p-logo__img {
  height: calc(45 / 16 * 1rem);
  margin-bottom: calc(8 / 16 * 1rem);
  margin-top: calc(8 / 16 * 1rem);
  width: calc(58 / 16 * 1rem);
}

.p-logo__texts {
  display: flex;
  flex-direction: column;
  gap: calc(12 / 16 * 1rem);
}

.p-logo__title {
  display: inline-block;
  font-size: calc(24 / 16 * 1rem);
  font-weight: bold;
  white-space: nowrap;
}

.p-logo-title__en {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1.04px;
  white-space: nowrap;
}

/* ドロワーロゴがある時にロゴの横幅を制限 */

.p-header__nav {
  display: flex;
  gap: calc(24 / 16 * 1rem);
}

.p-header-nav__list {
  display: flex;
  gap: calc(33 / 16 * 1rem);
  margin-top: calc(51 / 16 * 1rem);
}

.p-header-nav-list__item {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
}

.p-header-nav-item__link {
  transition: all 0.5s ease 0s;
}

/* 採用情報 */

.p-header-nav-btn__link {
  align-items: center;
  background: #50678f;
  color: rgba(255, 255, 255, 0.93);
  display: flex;
  font-family: "BIZ UDPGothic", sans-serif;
  font-size: calc(14 / 16 * 1rem);
  font-weight: 700;
  height: 80px;
  justify-content: center;
  padding-left: calc(12 / 16 * 1rem);
  padding-right: calc(12 / 16 * 1rem);
  text-align: center;
  text-overflow: ellipsis;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  white-space: nowrap;
}

.p-top-page_fv__slide {
  z-index: 0;
}

.p-top-page_fv__slide .slider {
  height: calc(100vh - 80px);
  min-height: calc(500 / 16 * 1rem);
  overflow: hidden;
  position: relative;
}

.p-top-page_fv__slide .slider-slide {
  display: flex;
  height: 100%;
  justify-content: center;
}

.p-top-page_fv__slide .slider-slide picture {
  display: block;
  height: 100%;
  width: 100%;
}

.p-top-page_fv__slide .slider-slide img {
  -o-object-fit: cover;
  align-self: center;
  height: 100%;
  object-fit: cover;
  width: 100%; /* 上下の中央揃え */
}

/* videoのスライド */

/* imgのスライド */

.img-slide {
  position: relative;
}

/* 前へ次への矢印カスタマイズ */

/* 前へ次への矢印カスタマイズ */

/* 前への矢印カスタマイズ */

/* 次への矢印カスタマイズ */

/* 画像サイズ調整 */

.slider-slide img {
  height: auto;
  width: 100%;
}

/* スライダー上のテキストコンテント */

.p-top-page_slide__cont {
  background: rgba(245, 245, 245, 0.7);
  position: absolute;
  z-index: 1;
}

.p-top-page_slide__lead {
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ 明朝", "MS Mincho", sans-serif;
  font-size: clamp(18px, 2.777vw, 40px);
  font-weight: 600;
  line-height: 1.5;
}

.p-top-page_news__block {
  background: rgba(204, 204, 204, 0.25);
  margin-top: calc(16 / 16 * 1rem);
  padding: calc(30 / 16 * 1rem) calc(80 / 16 * 1rem) calc(36 / 16 * 1rem) calc(80 / 16 * 1rem);
  width: 100%;
}

.p-top-page_news__list {
  display: flex;
  flex-direction: column;
  gap: calc(16 / 16 * 1rem);
}

.p-top-page_news-list__item {
  font-size: calc(16 / 16 * 1rem);
}

.p-top-page_news-list__item01 {
  display: flex;
}

.p-top-page_news-list__item01 time {
  display: inline-block;
  font-weight: 900;
  line-height: 1.5;
  text-transform: uppercase;
}

.p-top-page_news-item__link {
  display: flex;
  transition: all 0.5s ease 0s;
}

.p-top-page_news-item__link:hover {
  /* opacity: 0.7; */
  color: #4169e1;
}

.p-top-page_news-item__link time {
  display: inline-block;
  font-weight: 900;
  line-height: 1.5;
  text-transform: uppercase;
}

.p-top-page_news-item__text {
  display: inline-block;
  flex: 1;
  font-weight: 900;
  line-height: 1.5;
  text-transform: uppercase;
}

.p-top-page_business-introduction__block {
  display: flex;
  gap: calc(21 / 16 * 1rem);
  width: 100%;
}

.p-top-page_business-introduction__img {
  flex: 0 1 calc(440 / 16 * 1rem);
}

.p-top-page_business-introduction__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_business-introduction-img__sp {
  aspect-ratio: 343/184;
  margin-top: calc(5 / 16 * 1rem);
  width: 100%;
}

.p-top-page_business-introduction-img__sp img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_business-introduction__cont {
  flex: 0 1 calc(419 / 16 * 1rem);
  margin-top: calc(8 / 16 * 1rem);
}

.p-top-page_business-introduction__text {
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(15 / 16 * 1rem);
  text-transform: uppercase;
}

.p-top-page_business-introduction__tags {
  display: flex;
  gap: calc(37 / 16 * 1rem);
  justify-content: flex-end;
}

.p-top-page_business-introduction__tag {
  font-size: calc(14 / 16 * 1rem);
  font-weight: 400;
  line-height: 1.7142;
  text-transform: uppercase;
}

.p-top-page_work-introduction__list {
  display: flex;
  margin-top: calc(16 / 16 * 1rem);
}

.p-top-page_work-introduction-list__item {
  flex: 0 1 calc(277 / 16 * 1rem);
}

.p-top-page_work-introduction-item__wrapper {
  background: rgba(204, 204, 204, 0.25);
  display: block;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
}

.p-top-page_work-introduction-item__link {
  display: block;
  height: 100%;
  transition: all 0.5s ease 0s;
  width: 100%;
}

.p-top-page_work-introduction-item__head {
  padding: calc(8 / 16 * 1rem) calc(24 / 16 * 1rem);
}

.p-top-page_work-introduction-item__title {
  font-weight: 900;
}

.p-top-page_work-introduction-item__body {
  width: 100%;
}

.p-top-page_work-introduction-item__body img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_work-introduction-item__bottom {
  padding: calc(4 / 16 * 1rem);
}

.p-top-page_work-introduction-item__text {
  font-weight: 400;
  line-height: 1.25;
  text-transform: uppercase;
}

.p-top-page_company-info__block {
  display: flex;
  gap: calc(45 / 16 * 1rem);
  justify-content: center;
  margin-top: calc(16 / 16 * 1rem);
  margin-top: calc(24 / 16 * 1rem);
}

.p-top-page_company-info__cont01 {
  flex: 0 1 calc(425 / 16 * 1rem);
}

.p-top-page_company-info__text {
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(24 / 16 * 1rem);
  text-transform: uppercase;
}

.p-top-page_company-info__cont02 {
  flex: 0 1 calc(405 / 16 * 1rem);
}

.p-top-page_company-info__img {
  height: clamp(250px, 18.95vw, 273px);
  width: 100%;
}

.p-top-page_company-info__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_company-info-img__sp {
  aspect-ratio: 343/180;
  margin-top: calc(6 / 16 * 1rem);
  width: 100%;
}

.p-top-page_company-info-img__sp img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_company-info-img__text {
  font-weight: 400;
  margin-top: calc(14 / 16 * 1rem);
  text-align: center;
  text-transform: uppercase;
}

.p-top-page_research-center__block {
  display: flex;
}

.p-top-page_research-center__cont01 {
  flex: 0 1 calc(401 / 16 * 1rem);
}

.p-top-page_research-center__text {
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(22 / 16 * 1rem);
  text-transform: uppercase;
}

.p-top-page_research-center__cont02 {
  flex: 0 1 calc(422 / 16 * 1rem);
}

.p-top-page_research-center__img {
  height: clamp(250px, 18.194vw, 262px);
  width: 100%;
}

.p-top-page_research-center__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_research-center-img__sp {
  aspect-ratio: 343/224;
  margin-top: calc(4 / 16 * 1rem);
  width: 100%;
}

.p-top-page_research-center-img__sp img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_research-center-img__text {
  font-size: calc(14 / 16 * 1rem);
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(22 / 16 * 1rem);
  text-align: center;
  text-transform: uppercase;
}

.p-top-page_careers__block {
  display: flex;
  gap: calc(27 / 16 * 1rem);
  justify-content: center;
  margin-top: calc(31 / 16 * 1rem);
}

.p-top-page_careers__cont {
  flex: 0 1 calc(420 / 16 * 1rem);
}

.p-top-page_careers__texts {
  display: flex;
  flex-direction: column;
  gap: calc(24 / 16 * 1rem);
  margin-top: calc(22 / 16 * 1rem);
}

.p-top-page_careers__text {
  font-weight: 400;
  line-height: 1.5;
  text-transform: uppercase;
}

.p-top-page_careers__img {
  flex: 0 1 calc(416 / 16 * 1rem);
  height: clamp(450px, 32.7vw, 471px);
}

.p-top-page_careers__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-top-page_careers-img__sp {
  aspect-ratio: 343/504;
  background: gray;
  margin-top: calc(11 / 16 * 1rem);
  width: 100%;
}

.p-top-page_careers-img__sp img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-footer__nav {
  display: flex;
  gap: calc(16 / 16 * 1rem);
}

.p-footer-nav__list {
  display: flex;
  gap: calc(33 / 16 * 1rem);
  margin-top: calc(51 / 16 * 1rem);
}

.p-footer-nav-list__item {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
}

.p-footer-nav-item__link {
  transition: all 0.5s ease 0s;
}

/* 採用情報 */

.p-footer-nav-btn__link {
  align-items: center;
  background: #50678f;
  color: rgba(255, 255, 255, 0.93);
  display: flex;
  font-family: "BIZ UDPGothic", sans-serif;
  font-size: calc(14 / 16 * 1rem);
  font-weight: 700;
  height: 80px;
  justify-content: center;
  padding-left: calc(12 / 16 * 1rem);
  padding-right: calc(12 / 16 * 1rem);
  text-align: center;
  text-overflow: ellipsis;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  white-space: nowrap;
}

.p-footer-nav-sp__list {
  display: inline-flex;
  flex-direction: column;
  gap: calc(24 / 16 * 1rem);
}

.p-footer-nav-sp-list__item {
  font-weight: bold;
  letter-spacing: 1.04px;
  line-height: 2.5;
}

.p-footer-nav-sp-item__link {
  display: block;
  height: 100%;
  padding-left: calc(16 / 16 * 1rem);
  position: relative;
  transition: all 0.5s ease 0s;
  width: 100%;
}

.p-footer-nav-sp-item__link::before {
  background: #fff;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: calc(8 / 16 * 1rem);
}

.p-business-introduction-page__block {
  padding-bottom: calc(77 / 16 * 1rem);
}

.p-business-introduction-page__info {
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: calc(18 / 16 * 1rem);
  padding-top: calc(14 / 16 * 1rem);
}

.p-business-introduction-page__list {
  display: flex;
  flex-direction: column;
  margin-top: calc(12 / 16 * 1rem);
}

.p-business-introduction-page-list__item {
  width: calc(50% - 24px);
}

.p-business-introduction-page_item__wrapper {
  display: flex;
  flex-direction: column;
  gap: calc(10 / 16 * 1rem);
}

.p-business-introduction-page_item__body img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-business-introduction-page__text {
  font-weight: 400;
  margin-top: calc(36 / 16 * 1rem);
}

.p-staff-introduction-page__block {
  padding-bottom: calc(34 / 16 * 1rem);
  padding-top: calc(14 / 16 * 1rem);
}

.p-staff-introduction-page__info {
  font-weight: 400;
}

.p-staff-introduction-page_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: calc(42 / 16 * 1rem);
}

.p-staff-introduction-page_list__item {
  flex: 0 1 calc(50% - 12px);
}

.p-staff-introduction-page_item__link {
  display: block;
  height: 100%;
  transition: all 0.5s ease 0s;
  width: 100%;
}

.p-staff-introduction-page_item__wrapper {
  display: block;
  height: 100%;
  width: 100%;
}

.p-staff-introduction-page_item__head {
  width: 100%;
}

.p-staff-introduction-page_item__head img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-staff-introduction-page_item__body {
  background: #f5f5f5;
  text-align: center;
  width: 100%;
}

.p-staff-introduction-page_item__name {
  font-weight: 400;
}

/* TKさんのfv 01*/

.p-introduction-page_fv__block {
  background: url("../img/fv_introduction01.jpg") no-repeat center top/cover;
  position: relative;
  width: 100%;
}

/* YKさんのfv 02*/

.l-introduction02-page .p-introduction-page_fv__block {
  background: url("../img/fv_introduction02.jpg") no-repeat center top/cover;
}

/* SSさんのfv 03*/

.l-introduction03-page .p-introduction-page_fv__block {
  background: url("../img/fv_introduction03.jpg") no-repeat center top/cover;
}

/* KCさんのfv 04*/

.l-introduction04-page .p-introduction-page_fv__block {
  background: url("../img/fv_introduction04.jpg") no-repeat center top/cover;
}

.p-introduction-page_fv__cont {
  background: #d9d9d9;
  width: calc(323 / 16 * 1rem);
}

/* TKさん 01*/

.p-introduction01-page_fv__cont {
  position: absolute;
}

/* YKさん 02*/

.p-introduction02-page_fv__cont {
  padding: calc(27 / 16 * 1rem) calc(8 / 16 * 1rem) calc(27 / 16 * 1rem) calc(22 / 16 * 1rem);
  position: absolute;
  width: calc(325 / 16 * 1rem);
}

/* SSさん 03*/

.p-introduction03-page_fv__cont {
  padding: calc(27 / 16 * 1rem) calc(20 / 16 * 1rem) calc(25 / 16 * 1rem) calc(32 / 16 * 1rem);
  position: absolute;
}

/* KCさん 04*/

.p-introduction04-page_fv__cont {
  padding: calc(25 / 16 * 1rem) calc(39 / 16 * 1rem);
  position: absolute;
}

.p-introduction-page_fv__lead {
  font-size: calc(24 / 16 * 1rem);
  font-weight: bold;
  line-height: 1.5;
}

.p-introduction-page_fv__name {
  font-weight: 400;
  margin-top: calc(18 / 16 * 1rem);
  text-align: center;
}

/* YKさん 02*/

.p-introduction02-page_fv__cont .p-introduction-page_fv__name {
  margin-top: calc(24 / 16 * 1rem);
}

/* SSさん 03*/

.p-introduction03-page_fv__cont .p-introduction-page_fv__name {
  margin-top: calc(24 / 16 * 1rem);
}

/* KCさん 04*/

.p-introduction04-page_fv__cont .p-introduction-page_fv__name {
  margin-top: calc(24 / 16 * 1rem);
}

.p-introduction-page__block {
  padding-bottom: calc(44 / 16 * 1rem);
  padding-top: calc(52 / 16 * 1rem);
}

.p-introduction-page__info {
  font-size: calc(24 / 16 * 1rem);
  font-weight: bold;
  text-align: center;
}

.p-introduction-page__list {
  display: flex;
  flex-direction: column;
}

.p-introduction-page_item__wrapper {
  display: flex;
}

.p-introduction-page_item__head {
  flex: 0 1 48.63%;
}

.p-introduction-page_item__title {
  align-items: center;
  display: flex;
  font-size: calc(24 / 16 * 1rem);
  font-weight: bold;
  gap: calc(9 / 16 * 1rem);
}

/* Q1 部分 */

.p-introduction-page_item__number {
  display: inline-block;
  font-size: calc(48 / 16 * 1rem);
  font-weight: 400;
  padding-left: calc(9 / 16 * 1rem);
  position: relative;
}

.p-introduction-page_item__number::before {
  background: #ccc;
  content: "";
  display: block;
  height: calc(40 / 16 * 1rem);
  left: 0;
  position: absolute;
  top: calc(4 / 16 * 1rem);
  width: calc(8 / 16 * 1rem);
}

.p-introduction-page_item__inline {
  display: inline-block;
}

.p-introduction-page_item__lead {
  font-size: calc(24 / 16 * 1rem);
  font-weight: bold;
  line-height: 1.5;
  margin-top: calc(31 / 16 * 1rem);
}

.p-introduction-page_item__text {
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(48 / 16 * 1rem);
}

.p-introduction-page_item__body {
  flex: 0 1 48.63%;
  margin-top: calc(6 / 16 * 1rem);
}

.p-introduction-page_item__body img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-introduction-page_item__message {
  font-weight: bold;
}

.p-introduction-page_item__cheer {
  line-height: 1.5;
}

/* TKさん 01*/

.l-introduction01-page .p-introduction-page_item__cheer {
  font-weight: 400;
  margin-top: calc(17 / 16 * 1rem);
}

/* YKさん 02*/

/* 経験者へのメッセージ タイトル */

.p-introduction-page_item__professional-message {
  margin-top: calc(30 / 16 * 1rem);
}

/* 経験者へのメッセージ タイトル */

.p-introduction-page__name {
  font-weight: 400;
  margin-bottom: calc(8 / 16 * 1rem);
  margin-top: calc(9 / 16 * 1rem);
  text-align: center;
}

/* KCさん(04)のSPデザインのみ3枚目表示 */

/* TKさん 01*/

/* YKさん 02*/

.l-introduction02-page .p-introduction-page_list__item .p-introduction-page_item__text {
  margin-top: calc(15 / 16 * 1rem);
}

/* SSさん 03*/

.l-introduction03-page .p-introduction-page_item__cheer {
  margin-top: calc(4 / 16 * 1rem);
}

.l-introduction03-page .p-introduction-page_item__professional-message {
  margin-top: calc(16 / 16 * 1rem);
}

/* KCさん 04*/

.p-research-center__slide {
  position: relative;
  z-index: 0;
}

/* スライダー上のテキスト */

.p-research-center-page_slide__cont {
  background: rgba(217, 217, 217, 0.59);
  max-width: 100%;
  position: absolute;
  text-align: center;
  transform: translateX(-50%);
  z-index: 1;
}

.p-research-center-page_slide__name {
  font-size: calc(24 / 16 * 1rem);
  font-weight: bold;
}

.p-research-center-page_slide__lead {
  font-size: calc(14 / 16 * 1rem);
  font-weight: 400;
  margin-top: calc(24 / 16 * 1rem);
}

/* スライド部分 */

.p-research-center__slide .slider {
  overflow: hidden;
  position: relative;
}

.slick-list {
  height: 100%;
  width: 100%;
}

.slick-track {
  height: 100%;
  width: 100%;
}

.p-research-center__slide .slider .slider-slide {
  height: 100% !important;
  width: 100%;
}

.p-research-center__slide .slider .slider-slide img {
  -o-object-fit: cover;
  align-self: center;
  height: 100%;
  object-fit: cover;
  width: 100%; /* 上下の中央揃え */
}

.slick-arrow {
  height: calc(50 / 16 * 1rem);
  width: calc(50 / 16 * 1rem);
  z-index: 2 !important;
}

.slick-next {
  right: calc(20 / 16 * 1rem);
}

.slick-prev {
  left: calc(20 / 16 * 1rem);
}

/* 前へ次への矢印カスタマイズ */

.slick-arrow::before {
  content: "" !important;
  height: 100% !important;
  left: 0;
  position: absolute;
  top: 0;
  width: 100% !important;
}

/* 前への矢印カスタマイズ */

.slick-prev::before {
  background-image: url("../img/icon_slider.svg");
  background-repeat: no-repeat;
  background-size: contain !important;
  transform: rotate(-180deg) !important;
}

/* 次への矢印カスタマイズ */

.slick-next::before {
  background-image: url("../img/icon_slider.svg") !important;
  background-repeat: no-repeat;
  background-size: contain !important;
  content: "";
}

/* 画像サイズ調整 */

.slider-slide img {
  height: auto;
  width: 100%;
}

/* スライダー下のコピーライト */

.p-research-center-page_slider__copyright {
  font-size: calc(14 / 16 * 1rem);
  font-weight: 400;
  margin-bottom: calc(26 / 16 * 1rem);
  text-align: right;
}

.p-company-info-page_greeting__block {
  display: flex;
  gap: calc(12 / 16 * 1rem);
  justify-content: center;
  margin-top: calc(40 / 16 * 1rem);
}

.p-company-info-page_greeting__cont01 {
  flex: 0 1 57.27%;
}

.p-company-info-page_greeting__text {
  font-weight: 400;
  line-height: 1.5;
}

.p-company-info-page_greeting-text__sp {
  font-size: calc(10 / 16 * 1rem);
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(10 / 16 * 1rem);
}

.p-company-info-page_greeting__cont02 {
  flex: 0 1 41.36%;
}

.p-company-info-page_greeting__img {
  aspect-ratio: 364/318;
  width: 100%;
}

.p-company-info-page_greeting__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-company-info-page_greeting-cont02__body {
  margin-top: calc(33 / 16 * 1rem);
}

.p-company-info-page_greeting-cont02__position {
  color: #5b5b5b;
  font-size: calc(14 / 16 * 1rem);
  font-weight: 400;
  padding-left: 17.85%;
}

.p-company-info-page_greeting-cont02__name {
  font-size: calc(24 / 16 * 1rem);
  font-weight: 600;
  margin-top: calc(13 / 16 * 1rem);
  text-align: center;
}

.p-company-info-page_overview__block {
  background: rgba(204, 204, 204, 0.45);
  margin-top: calc(12 / 16 * 1rem);
  padding: calc(8 / 16 * 1rem) calc(21 / 16 * 1rem) calc(17 / 16 * 1rem);
}

.p-company-info-page_overview__list {
  display: flex;
  flex-direction: column;
}

.p-company-info-page_overview-list__item {
  display: flex;
  flex-wrap: wrap;
  font-weight: 400;
  line-height: 1.5;
}

.p-company-info-page_overview-item__desc {
  line-height: 1.5;
}

.p-company-info-page_company-values__block {
  padding-bottom: calc(24 / 16 * 1rem);
  padding-top: calc(12 / 16 * 1rem);
}

.p-company-info-page_company-value__lead {
  line-height: 1.5;
}

.p-company-info-page_organization__block {
  padding-bottom: calc(12 / 16 * 1rem);
  padding-top: calc(27 / 16 * 1rem);
}

.p-company-info-page_organization__img {
  display: block;
  margin-top: calc(12 / 16 * 1rem);
  width: 100%;
  background: rgb(204 204 204 / 0.45);
}

.p-company-info-page_organization__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-company-info-page_address__list {
  display: flex;
  flex-direction: column;
  gap: calc(20 / 16 * 1rem);
  margin-top: calc(20 / 16 * 1rem);
}

.p-company-info-page_list__item {
  display: flex;
}

.p-company-info-page_item__term {
  font-weight: 400;
}

.p-company-info-page_item__desc {
  align-items: flex-start;
  display: flex;
  font-weight: 400;
}

.p-company-info-page_item-desc__inline {
  line-height: 1.5;
}

.p-contact__block {
  padding-bottom: calc(43 / 16 * 1rem);
  padding-top: calc(12 / 16 * 1rem);
}

.p-contact__title {
  font-weight: bold;
  padding-left: calc(16 / 16 * 1rem);
}

.p-contact__list {
  display: flex;
  flex-direction: column;
  margin-top: calc(37 / 16 * 1rem);
}

.p-contact-list__item {
  align-items: center;
  display: flex;
  font-weight: 400;
}

.p-contact-item__term {
  font-weight: 400;
}

.p-contact-item__desc {
  flex: 1;
  font-weight: 400;
  line-height: 1.5;
  white-space: nowrap;
}

.p-contact-item-desc__link {
  display: block;
  height: 100%;
  transition: all 0.5s ease 0s;
  width: 100%;
}

.p-research-center-page__wrapper {
  padding-bottom: calc(26 / 16 * 1rem);
  padding-top: calc(13 / 16 * 1rem);
}

.p-research-center-page__block01 {
  padding-bottom: calc(22 / 16 * 1rem);
}

.p-research-center-page__cont01 {
  margin-top: calc(16 / 16 * 1rem);
}

.p-research-center-page_cont01__text {
  font-weight: 400;
  line-height: 1.5;
}

.p-research-center-page_cont01__body {
  flex: 0 1 calc(428 / 16 * 1rem);
}

.p-research-center-page_cont01__img {
  aspect-ratio: 428/260;
  width: 100%;
}

.p-research-center-page_cont01__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-research-center-page__copyright {
  font-size: calc(14 / 16 * 1rem);
  font-weight: 400;
  margin-right: calc(12 / 16 * 1rem);
  margin-top: calc(12 / 16 * 1rem);
  text-align: right;
}

.p-research-center-page__block02 {
  padding-bottom: calc(28 / 16 * 1rem);
  padding-top: calc(35 / 16 * 1rem);
}

.p-research-center-page_block__title {
  font-weight: bold;
}

.p-research-center-page_video {
  aspect-ratio: 700/400;
  margin: calc(30 / 16 * 1rem) auto 0;
  max-width: 100%;
  width: calc(700 / 16 * 1rem);
}

.p-research-center-page_video iframe {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-research-center-page__block03 {
  padding-top: calc(28 / 16 * 1rem);
}

.p-research-center-page_research-center__img {
  aspect-ratio: 880/366;
  margin-top: calc(21 / 16 * 1rem);
  width: 100%;
}

.p-research-center-page_research-center__img img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.p-careers-page_message__position {
  color: #5b5b5b;
  font-size: calc(14 / 16 * 1rem);
  margin-right: 39%;
  margin-top: calc(18 / 16 * 1rem);
  text-align: center;
}

.p-careers-page_message__name {
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ 明朝", "MS Mincho", sans-serif;
  font-size: calc(24 / 16 * 1rem);
  font-weight: 600;
  margin-top: calc(15 / 16 * 1rem);
  text-align: center;
}

.p-career-page_title__wrapper {
  display: flex;
  justify-content: space-between;
  max-width: 100%;
  width: calc(753 / 16 * 1rem);
}

.p-careers-page_job__info {
  color: #eb3223;
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(16 / 16 * 1rem);
}

.p-careers-page_job__list {
  display: flex;
  flex-direction: column;
  margin-top: calc(16 / 16 * 1rem);
}

.p-careers-page_job-list__item {
  display: flex;
  flex-wrap: wrap;
  font-weight: 400;
  line-height: 1.5;
}

.p-careers-page_job-item__desc {
  line-height: 1.5;
}

.p-careers-page_internship__text {
  /* font-size: calc(14 / 16 * 1rem); */
  font-weight: 400;
  line-height: 1.5;
  margin-top: calc(17 / 16 * 1rem);
}

.p-careers-page_internship__list {
  display: flex;
  margin-top: calc(34 / 16 * 1rem);
}

.p-careers-page_internship-list__item {
  width: calc(50% - 12px);
}

.p-careers-page_internship-list__item img {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.l-careers-page .p-contact__list {
  margin-top: calc(7 / 16 * 1rem);
}

.l-careers-page .p-contact__block {
  padding-bottom: calc(64 / 16 * 1rem);
}

.p-financial-statements-page__cont {
  display: flex;
  gap: calc(24 / 16 * 1rem);
  justify-content: center;
  margin-top: calc(15 / 16 * 1rem);
}

.p-financial-statements-page__head {
}

.p-financial-statements-page-head__lead {
}

.p-financial-statements-page__list {
  background: rgba(204, 204, 204, 0.45);
  display: flex;
  flex-direction: column;
  gap: calc(38 / 16 * 1rem);
}

.p-financial-statements-page-item__link {
  display: block;
  font-weight: 400;
  height: 100%;
  line-height: 1.5;
  padding-left: calc(42 / 16 * 1rem);
  position: relative;
  transition: all 0.5s ease 0s;
  width: 100%;
}

.p-financial-statements-page-item__link::before {
  background: url("../img/icon_check--dark.svg") no-repeat center center/contain;
  content: "";
  display: block;
  height: calc(26 / 16 * 1rem);
  left: 0;
  position: absolute;
  top: 0;
  width: calc(26 / 16 * 1rem);
}

/* 赤チェック */

.p-financial-statements-page-list__item.is-checked .p-financial-statements-page-item__link::before {
  background: url("../img/icon_check--red.svg") no-repeat center center/contain;
}

.p-financial-statements-page__info {
  font-weight: 400;
}

.p-drawer__icon {
  height: calc(20 / 16 * 1rem);
  position: fixed;
  right: calc(30 / 16 * 1rem);
  top: calc(14 / 16 * 1rem);
  width: calc(25 / 16 * 1rem);
  z-index: 210;
}

.p-drawer__icon.is-active {
  height: calc(38 / 16 * 1rem);
  width: calc(38 / 16 * 1rem);
}

.p-drawer__icon.is-active .p-drawer-icon__bar01 {
  left: calc(-9 / 16 * 1rem);
  top: calc(21 / 16 * 1rem);
  transform: rotate(-45deg);
  width: calc(52 / 16 * 1rem);
}

.p-drawer__icon.is-active .p-drawer-icon__bar02 {
  display: none;
}

.p-drawer__icon.is-active .p-drawer-icon__bar03 {
  left: calc(-9 / 16 * 1rem);
  top: calc(21 / 16 * 1rem);
  transform: rotate(45deg);
  width: calc(52 / 16 * 1rem);
}

.p-drawer-icon__bars {
  background: inherit;
  cursor: pointer;
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
}

.p-drawer-icon__bar {
  background: #000;
  display: block;
  height: calc(1 / 16 * 1rem);
  left: 0;
  position: absolute;
  width: 100%;
}

.p-drawer-icon__bar01 {
  top: 0;
}

.p-drawer-icon__bar02 {
  top: calc(10 / 16 * 1rem);
}

.p-drawer-icon__bar03 {
  top: calc(19 / 16 * 1rem);
}

.p-video__wrapper {
  display: none;
  height: calc(100vh - 80px);
  left: 0;
  overflow: hidden;
  position: fixed;
  top: 80px;
  width: 100%;
  z-index: 99;
}

.top-page_fv-video {
  -o-object-fit: cover;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

#top-content {
  position: relative;
}

.u-section-title__wrapper {
  text-align: center;
}

.u-op-0 {
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .l-introduction-page .l-main {
    margin-top: 112px;
  }

  .l-top-page_research-center__section .c-section__title {
    margin-left: 21%;
  }

  .l-business-introduction-page .c-section__title {
    margin-top: calc(28 / 16 * 1rem);
  }

  .l-top-page_business-introduction__section .c-section__lead {
    margin-top: calc(11 / 16 * 1rem);
    padding-left: calc(23 / 16 * 1rem);
  }

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

  .p-top-page_research-center__block .c-btn__link {
    margin-right: calc(20 / 16 * 1rem);
  }

  .c-btn.p-sp-careers-page_job__btn {
    display: none;
  }

  .p-logo a {
    gap: calc(18 / 16 * 1rem);
  }

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

  .p-header-nav-item__link:hover {
    opacity: 0.7;
  }

  .p-top-page_slide__cont {
    max-width: calc(716 / 16 * 1rem);
    min-width: calc(390 / 16 * 1rem);
    padding: calc(7 / 16 * 1rem) calc(12 / 16 * 1rem) calc(3 / 16 * 1rem) calc(28 / 16 * 1rem);
    right: 0;
    top: calc(98 / 16 * 1rem);
    width: 49.72vw;
  }

  .p-top-page_news-list__item01 time {
    flex: 0 0 calc(150 / 16 * 1rem);
  }

  .p-top-page_news-item__link time {
    flex: 0 0 calc(150 / 16 * 1rem);
  }

  .p-top-page_business-introduction-img__sp {
    display: none;
  }

  .p-top-page_business-introduction__text {
    padding-left: calc(23 / 16 * 1rem);
  }

  .p-top-page_business-introduction__tags {
    margin-top: calc(5 / 16 * 1rem);
  }

  .p-top-page_work-introduction__list {
    /* gap: calc(42 / 16 * 1rem); */
    /* gap: 8px 20px; */
    gap: calc(8 / 16 * 1rem) calc(20 / 16 * 1rem);
    flex-wrap: wrap;
    justify-content: center;
  }

  .p-top-page_work-introduction-item__link:hover {
    opacity: 0.7;
  }

  .p-top-page_work-introduction-item__title {
    line-height: 1.5;
    text-transform: uppercase;
  }

  .p-top-page_work-introduction-item__body {
    height: clamp(130px, 9.5833vw, 138px);
  }

  .p-top-page_company-info__text {
    padding-left: calc(25 / 16 * 1rem);
  }

  .p-top-page_company-info-img__sp {
    display: none;
  }

  .p-top-page_research-center__block {
    flex-direction: row-reverse;
    gap: calc(54 / 16 * 1rem);
    justify-content: center;
    margin-top: calc(16 / 16 * 1rem);
  }

  .p-top-page_research-center__text {
    padding-left: calc(10 / 16 * 1rem);
  }

  .p-top-page_research-center-img__sp {
    display: none;
  }

  .p-top-page_careers__texts {
    padding-left: calc(17 / 16 * 1rem);
  }

  .p-top-page_careers-img__sp {
    display: none;
  }

  .p-footer-nav-item__link:hover {
    opacity: 0.7;
  }

  .p-footer-nav__sp {
    display: none;
  }

  .p-business-introduction-page__list {
    align-items: center;
    background: rgba(204, 204, 204, 0.25);
    flex-wrap: wrap;
    gap: calc(48 / 16 * 1rem);
    justify-content: center;
    padding-bottom: calc(16 / 16 * 1rem);
    padding-top: calc(16 / 16 * 1rem);
  }

  .p-business-introduction-page__list01 {
    height: calc(706 / 16 * 1rem);
    row-gap: calc(80 / 16 * 1rem);
  }

  .p-business-introduction-page_item__head {
    padding-left: calc(8 / 16 * 1rem);
    padding-right: calc(8 / 16 * 1rem);
    text-align: center;
  }

  .p-business-introduction-page_item__text {
    font-weight: 900;
    line-height: 1.5;
  }

  .p-business-introduction-page_item-text__inline {
    display: inline-block;
    text-align: left;
  }

  .p-business-introduction-page_item__body {
    flex: 0 1 calc(256 / 16 * 1rem);
  }

  .p-business-introduction-page__list02 {
    height: calc(706 / 16 * 1rem);
    row-gap: calc(40 / 16 * 1rem);
  }

  .p-business-introduction-page__list03 {
    height: calc(1118 / 16 * 1rem);
    row-gap: calc(70 / 16 * 1rem);
  }

  .p-business-introduction-page__list04 {
    height: calc(880 / 16 * 1rem);
    row-gap: calc(90 / 16 * 1rem);
    justify-content: flex-start;
  }

  .p-business-introduction-page__list04 .p-business-introduction-page-list__item:nth-child(3) {
    margin-top: 130px;
  }

  .p-business-introduction-page__text {
    margin-right: calc(22 / 16 * 1rem);
  }

  .p-staff-introduction-page__info {
    margin-left: calc(4 / 16 * 1rem);
  }

  .p-staff-introduction-page_list {
    -moz-column-gap: calc(24 / 16 * 1rem);
    column-gap: calc(24 / 16 * 1rem);
    row-gap: calc(42 / 16 * 1rem);
  }

  .p-staff-introduction-page_item__link:hover {
    opacity: 0.7;
  }

  .p-staff-introduction-page_item__head {
    aspect-ratio: 426/237;
  }

  .p-staff-introduction-page_item__body {
    padding: calc(17 / 16 * 1rem) calc(16 / 16 * 1rem) calc(19 / 16 * 1rem);
  }

  .p-introduction-page_fv__block {
    height: clamp(503px, 34.93vw, 34.93vw);
  }

  .p-introduction01-page_fv__cont {
    bottom: calc(38 / 16 * 1rem);
    left: 33%;
    padding: calc(37 / 16 * 1rem) calc(16 / 16 * 1rem) calc(10 / 16 * 1rem) calc(32 / 16 * 1rem);
    transform: translateX(-50%);
  }

  .p-introduction01-page_fv__cont .p-introduction-page_fv__name {
    margin-right: calc(8 / 16 * 1rem);
    margin-top: calc(30 / 16 * 1rem);
  }

  .p-introduction02-page_fv__cont {
    bottom: calc(40 / 16 * 1rem);
    left: 33%;
    transform: translateX(-50%);
  }

  .p-introduction03-page_fv__cont {
    left: 66.5%;
    top: calc(37 / 16 * 1rem);
    transform: translateX(-50%);
  }

  .p-introduction-page__list {
    gap: calc(38 / 16 * 1rem);
    margin-top: calc(85 / 16 * 1rem);
  }

  .p-introduction-page_list__item:nth-child(2n) .p-introduction-page_item__wrapper {
    flex-direction: row-reverse;
  }

  .p-introduction-page_item__wrapper {
    gap: calc(24 / 16 * 1rem);
    justify-content: center;
  }

  .p-introduction-page_item__message {
    color: #50678f;
    font-size: calc(24 / 16 * 1rem);
  }

  .p-introduction-page_item__cheer {
    margin-top: calc(14 / 16 * 1rem);
  }

  .l-introduction02-page .p-introduction-page_item__cheer {
    margin-top: calc(6 / 16 * 1rem);
  }

  .l-introduction01-page .p-introduction-page_list__item:nth-child(2) .p-introduction-page_item__lead {
    margin-top: calc(15 / 16 * 1rem);
  }

  .l-introduction01-page .p-introduction-page_list__item:nth-child(2) .p-introduction-page_item__text {
    margin-top: calc(12 / 16 * 1rem);
  }

  .l-introduction01-page .p-introduction-page_list__item:nth-child(3) .p-introduction-page_item__lead {
    margin-top: calc(41 / 16 * 1rem);
  }

  .l-introduction01-page .p-introduction-page_list__item:nth-child(3) .p-introduction-page_item__text {
    margin-top: calc(28 / 16 * 1rem);
  }

  .l-introduction01-page .p-introduction-page_list__item:nth-child(4) .p-introduction-page_item__text {
    margin-top: calc(17 / 16 * 1rem);
  }

  .l-introduction02-page .p-introduction-page_list__item:nth-child(1) .p-introduction-page_item__text {
    margin-top: calc(45 / 16 * 1rem);
  }

  .l-introduction02-page .p-introduction-page_list__item:nth-child(2) .p-introduction-page_item__text {
    margin-top: calc(32 / 16 * 1rem);
  }

  .l-introduction02-page .p-introduction-page_list__item:nth-child(3) .p-introduction-page_item__lead {
    margin-top: calc(26 / 16 * 1rem);
  }

  .l-introduction02-page .p-introduction-page_list__item:nth-child(4) .p-introduction-page_item__lead {
    margin-top: calc(14 / 16 * 1rem);
  }

  .l-introduction02-page .p-introduction-page_list__item .l-introduction02-page .p-introduction-page_item__message {
    margin-top: 39px;
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(1) .p-introduction-page_item__lead {
    margin-top: calc(6 / 16 * 1rem);
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(1) .p-introduction-page_item__text {
    margin-top: calc(9 / 16 * 1rem);
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(2) .p-introduction-page_item__text {
    margin-top: calc(32 / 16 * 1rem);
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(3) .p-introduction-page_item__lead {
    margin-top: calc(27 / 16 * 1rem);
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(3) .p-introduction-page_item__text {
    margin-top: calc(11 / 16 * 1rem);
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(4) .p-introduction-page_item__lead {
    margin-top: calc(35 / 16 * 1rem);
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(4) .p-introduction-page_item__text {
    margin-top: calc(32 / 16 * 1rem);
  }

  .l-introduction03-page .p-introduction-page_list__item:nth-child(5) .p-introduction-page_item__body img {
    height: auto;
  }

  .l-introduction04-page .p-introduction-page_list__item:nth-child(1) .p-introduction-page_item__lead {
    margin-top: calc(26 / 16 * 1rem);
  }

  .l-introduction04-page .p-introduction-page_list__item:nth-child(1) .p-introduction-page_item__text {
    margin-top: calc(24 / 16 * 1rem);
  }

  .l-introduction04-page .p-introduction-page_list__item:nth-child(2) .p-introduction-page_item__lead {
    margin-top: calc(14 / 16 * 1rem);
  }

  .l-introduction04-page .p-introduction-page_list__item:nth-child(2) .p-introduction-page_item__text {
    margin-top: calc(13 / 16 * 1rem);
  }

  .p-research-center__slide .slider {
    height: 38.19vw;
    max-height: calc(650 / 16 * 1rem);
    min-height: calc(300 / 16 * 1rem);
  }

  .p-research-center-page_slider__copyright {
    margin-right: calc(12 / 16 * 1rem);
  }

  .p-company-info-page_greeting__lead {
    font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ 明朝", "MS Mincho", sans-serif;
    font-size: calc(24 / 16 * 1rem);
    font-weight: 600;
    margin-left: calc(11 / 16 * 1rem);
    margin-top: calc(9 / 16 * 1rem);
  }

  .p-company-info-page_greeting-cont02__name {
    font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ 明朝", "MS Mincho", sans-serif;
    margin-left: calc(42 / 16 * 1rem);
  }

  .p-company-info-page_overview__list {
    /* 上下の余白 */
    gap: calc(11 / 16 * 1rem);
  }

  .p-company-info-page_overview-item__term {
    flex: 0 0 calc(161 / 16 * 1rem);
  }

  .p-company-info-page_overview-item__desc {
    flex: 0 1 calc(100% - 161px);
  }

  .p-company-info-page_overview-item__desc02,
  .p-company-info-page_overview-item__desc03,
  .p-company-info-page_overview-item__desc04 {
    margin-left: calc(161 / 16 * 1rem);
  }

  .p-company-info-page_company-value__lead {
    font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ 明朝", "MS Mincho", sans-serif;
    font-size: calc(24 / 16 * 1rem);
    font-weight: 600;
    margin-top: calc(50 / 16 * 1rem);
  }

  .p-company-info-page_address__list {
    /* 上下の余白 */
    gap: calc(20 / 16 * 1rem);
  }

  .p-company-info-page_item__term {
    flex: 0 0 calc(189 / 16 * 1rem);
    padding-left: calc(23 / 16 * 1rem);
  }

  .p-company-info-page_item__desc {
    flex: 0 1 calc(680 / 16 * 1rem);
  }

  .p-company-info-page_item-desc__inline {
    flex: 0 1 calc(359 / 16 * 1rem);
    padding-left: calc(10 / 16 * 1rem);
  }

  .p-contact__title {
    font-size: calc(24 / 16 * 1rem);
  }

  .p-contact__list {
    gap: calc(8 / 16 * 1rem);
  }

  .p-contact-item__term {
    flex: 0 0 calc(182 / 16 * 1rem);
    padding-left: calc(15 / 16 * 1rem);
  }

  .p-contact-item__desc a[href*="tel:"] {
    cursor: text;
    pointer-events: none;
  }

  .p-contact-item-desc__link:hover {
    opacity: 0.7;
  }

  .p-research-center-page__cont01 {
    display: flex;
    gap: calc(24 / 16 * 1rem);
    justify-content: center;
  }

  .p-research-center-page_cont01__head {
    flex: 0 1 calc(428 / 16 * 1rem);
    padding: 0 calc(16 / 16 * 1rem) calc(6 / 16 * 1rem);
  }

  .p-research-center-page_block__title {
    font-size: calc(24 / 16 * 1rem);
    text-align: center;
  }

  .p-research-center-page__block03 {
    padding-bottom: calc(30 / 16 * 1rem);
  }

  .p-careers-page_job__info {
    margin-left: calc(24 / 16 * 1rem);
  }

  .p-careers-page_job__list {
    gap: calc(12 / 16 * 1rem);
  }

  .p-careers-page_job-item__term {
    flex: 0 0 calc(166 / 16 * 1rem);
    padding-left: calc(24 / 16 * 1rem);
  }

  .p-careers-page_job-item__desc {
    flex: 0 1 calc(100% - 166px);
  }

  .p-careers-page_job-item__desc02,
  .p-careers-page_job-item__desc03,
  .p-careers-page_job-item__desc04,
  .p-careers-page_job-item__desc05,
  .p-careers-page_job-item__desc06 {
    margin-left: calc(166 / 16 * 1rem);
  }

  .p-careers-page_internship__text {
    margin-left: calc(16 / 16 * 1rem);
  }

  .p-careers-page_internship__list {
    -moz-column-gap: calc(24 / 16 * 1rem);
    column-gap: calc(24 / 16 * 1rem);
    flex-wrap: wrap;
    row-gap: calc(14 / 16 * 1rem);
  }

  .p-financial-statements-page__block {
    padding-bottom: calc(85 / 16 * 1rem);
    padding-top: calc(54 / 16 * 1rem);
  }

  .p-financial-statements-page__head {
    flex: 0 1 calc(428 / 16 * 1rem);
    min-width: calc(400 / 16 * 1rem);
  }

  .p-financial-statements-page-head__lead {
    text-align: center;
    font-size: 14px;
  }

  .p-financial-statements-page__list {
    padding: calc(16 / 16 * 1rem);
    margin-top: 18px;
  }

  .p-financial-statements-page-list__item {
    white-space: nowrap;
  }

  .p-financial-statements-page-item__link:hover {
    opacity: 0.7;
  }

  .p-financial-statements-page__info {
    font-size: calc(14 / 16 * 1rem);
    margin-bottom: calc(72 / 16 * 1rem);
    margin-left: calc(16 / 16 * 1rem);
    margin-top: calc(20 / 16 * 1rem);
  }

  .u-pc-none {
    display: none;
  }

  .u-pc-contents {
    display: contents;
  }
}

@media screen and (min-width: 1100px) {
  .l-header__inner {
    align-items: center;
    gap: calc(24 / 16 * 1rem);
    justify-content: center;
  }

  .l-footer__inner {
    gap: calc(24 / 16 * 1rem);
    height: 80px;
  }

  .l-main {
    margin-top: 80px; /* PC決算公告ページ footerを画面下に配置*/
    min-height: calc(100vh - 203px);
  }

  .l-footer {
    background: rgba(204, 204, 204, 0.45);
    height: calc(123 / 16 * 1rem);
  }

  .p-introduction04-page_fv__cont {
    left: 32.5%;
    top: calc(37 / 16 * 1rem);
    transform: translateX(-50%);
  }

  .p-research-center-page_slide__cont {
    bottom: calc(52 / 16 * 1rem);
    left: 76%;
    padding: calc(32 / 16 * 1rem) calc(8 / 16 * 1rem);
    width: calc(400 / 16 * 1rem);
  }

  .p-drawer__icon {
    display: none;
  }
}

@media screen and (max-width: 1099px) {
  .l-header__inner {
    padding: 0 calc(31 / 16 * 1rem) 0 calc(16 / 16 * 1rem);
  }

  .l-footer__inner {
    flex-direction: column;
    gap: calc(18 / 16 * 1rem);
    padding: 0 16px;
  }

  .l-main {
    margin-top: 65px;
    min-height: calc(100vh - 512px);
  }

  .l-header {
    height: 65px;
  }

  .l-footer {
    background: #fff;
  }

  .p-footer__bottom {
    height: 19px;
  }

  .p-copyright {
    font-size: calc(10 / 16 * 1rem);
    font-weight: 400;
  }

  .p-drawer-nav-item__link:hover {
    opacity: 0.7;
  }

  .p-logo__img {
    margin-bottom: 0;
    margin-right: auto;
    margin-top: calc(-11 / 16 * 1rem);
  }

  .p-logo__texts {
    margin-left: calc(8 / 16 * 1rem);
    margin-top: calc(-16 / 16 * 1rem);
  }

  .p-logo__title {
    font-size: calc(16 / 16 * 1rem);
    letter-spacing: 1.04px;
  }

  .p-logo-title__en {
    font-size: calc(10 / 16 * 1rem);
    font-weight: 400;
    letter-spacing: 0.65px;
  }

  .l-header .p-logo__title {
    font-size: clamp(12px, 4.266vw, 16px);
    white-space: nowrap;
  }

  .p-header__nav {
    display: none;
  }

  .p-footer__nav {
    display: none;
  }

  .p-footer-nav__sp {
    background: rgba(204, 204, 204, 0.25);
    display: block;
    margin: 0 auto;
    max-width: 100%;
    padding: calc(8 / 16 * 1rem);
    width: calc(640 / 16 * 1rem);
  }

  .p-footer-nav-sp-item__link:hover {
    opacity: 0.7;
  }

  .p-research-center-page_slide__cont {
    left: 73%;
    padding: calc(18 / 16 * 1rem) calc(8 / 16 * 1rem);
    top: 65%;
    width: calc(400 / 16 * 1rem);
  }

  .p-video__wrapper {
    height: calc(100vh - 65px);
    top: 65px;
  }
}

@media screen and (max-width: 767px) {
  .l-inner {
    padding: 0 16px;
  }

  .l-top-page__fv {
    height: calc(600 / 16 * 1rem);
  }

  .l-company-info-page_address__section {
    padding-bottom: calc(8 / 16 * 1rem);
    padding-top: calc(8 / 16 * 1rem);
  }

  .l-careers-page_new-grad-job__section {
    padding-bottom: calc(13 / 16 * 1rem);
    padding-top: calc(13 / 16 * 1rem);
  }

  .l-careers-page_mid-careers-job__section {
    padding-bottom: calc(13 / 16 * 1rem);
    padding-top: calc(13 / 16 * 1rem);
  }

  .l-careers-page_internship__section {
    padding-bottom: calc(13 / 16 * 1rem);
    padding-top: calc(13 / 16 * 1rem);
  }

  .p-drawer-nav-item__link:hover {
    opacity: 1;
  }

  .c-section__title {
    font-weight: bold;
    letter-spacing: 1.04px;
  }

  .l-business-introduction-page .c-section__title {
    margin-left: calc(16 / 16 * 1rem);
  }

  .l-staff-introduction-page .c-section__title {
    margin-left: calc(16 / 16 * 1rem);
  }

  .l-introduction-page .c-section__title {
    margin-left: calc(16 / 16 * 1rem);
  }

  .l-research-center-page .c-section__title {
    padding-left: calc(18 / 16 * 1rem);
    white-space: nowrap;
  }

  .c-section__lead {
    font-size: calc(16 / 16 * 1rem);
    letter-spacing: 1.04px;
    text-align: center;
  }

  .c-btn {
    margin-top: calc(8 / 16 * 1rem);
  }

  .c-btn__link {
    margin-right: auto;
  }

  .l-research-center-page .c-btn {
    display: none;
  }

  /* .p-career-page_title__wrapper .c-btn {
    display: none;
  } */

  .l-company-info-page .l-company-info-page_address__section .c-btn {
    margin-left: auto;
  }

  .p-top-page_fv__slide .slider {
    height: calc(100vh - 65px);
  }

  .p-top-page_slide__cont {
    bottom: calc(61 / 16 * 1rem);
    max-width: calc(380 / 16 * 1rem);
    min-width: calc(280 / 16 * 1rem);
    padding: calc(9 / 16 * 1rem) calc(6 / 16 * 1rem) calc(15 / 16 * 1rem);
    right: calc(17 / 16 * 1rem);
    text-align: center;
    width: 91.2vw;
  }

  .p-top-page_slide__lead {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1.04px;
  }

  .p-top-page_news__block {
    padding: calc(16 / 16 * 1rem) calc(8 / 16 * 1rem);
  }

  .p-top-page_news-list__item01 {
    flex-direction: column;
    gap: calc(2 / 16 * 1rem);
  }

  .p-top-page_news-list__item01 time {
    font-weight: 400;
  }

  .p-top-page_news-item__link {
    flex-direction: column;
    gap: calc(2 / 16 * 1rem);
  }

  .p-top-page_news-item__link time {
    font-weight: 400;
  }

  .p-top-page_news-item__text {
    font-weight: 400;
    text-indent: 1rem;
  }

  .p-top-page_business-introduction__img {
    display: none;
  }

  .p-top-page_business-introduction__cont {
    flex: 1;
  }

  .p-top-page_business-introduction__tags {
    gap: calc(8 / 16 * 1rem);
    margin-top: calc(4 / 16 * 1rem);
  }

  .p-top-page_work-introduction__list {
    flex-direction: column;
    gap: calc(8 / 16 * 1rem);
  }

  .p-top-page_work-introduction-list__item {
    width: 100%;
  }

  .p-top-page_work-introduction-item__wrapper {
    background: #fff;
    gap: calc(5 / 16 * 1rem);
  }

  .p-top-page_work-introduction-item__head {
    padding: 0;
    text-align: center;
  }

  .p-top-page_work-introduction-item__title {
    font-weight: bold;
    letter-spacing: 1.04px;
  }

  .p-top-page_work-introduction-item__body {
    aspect-ratio: 343/183;
    margin-top: calc(8 / 16 * 1rem);
    width: 100%;
  }

  .p-top-page_company-info__cont01 {
    flex: 1;
  }

  .p-top-page_company-info__cont02 {
    display: none;
  }

  .p-top-page_research-center__block {
    flex-direction: column;
  }

  .p-top-page_research-center__text {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-top-page_research-center__cont02 {
    display: none;
  }

  .p-top-page_careers__cont {
    flex: 1;
  }

  .p-top-page_careers__texts {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-top-page_careers__img {
    display: none;
  }

  .p-footer-nav-sp-item__link:hover {
    opacity: 1;
  }

  .p-business-introduction-page__block {
    padding-bottom: calc(26 / 16 * 1rem);
  }

  .p-business-introduction-page__info {
    display: none;
  }

  .p-business-introduction-page__list {
    gap: calc(16 / 16 * 1rem);
  }

  .p-business-introduction-page__list01 .p-business-introduction-page-list__item:nth-child(1) {
    order: 1;
  }

  .p-business-introduction-page__list01 .p-business-introduction-page-list__item:nth-child(2) {
    order: 3;
  }

  .p-business-introduction-page__list01 .p-business-introduction-page-list__item:nth-child(3) {
    order: 2;
  }

  .p-business-introduction-page-list__item {
    width: 100%;
  }

  .p-business-introduction-page_item__wrapper {
    gap: calc(4 / 16 * 1rem);
  }

  .p-business-introduction-page_item__text {
    font-weight: 400;
    line-height: 1.5;
    padding-left: calc(16 / 16 * 1rem);
    padding-right: calc(16 / 16 * 1rem);
    text-align: center;
  }

  .p-business-introduction-page_item-text__inline {
    display: inline-block;
    text-align: left;
  }

  .p-business-introduction-page_item__body {
    aspect-ratio: 375/552;
    width: 100%;
  }

  .p-business-introduction-page__list02 .p-business-introduction-page-list__item:nth-child(1) {
    order: 1;
  }

  .p-business-introduction-page__list02 .p-business-introduction-page-list__item:nth-child(2) {
    order: 3;
  }

  .p-business-introduction-page__list02 .p-business-introduction-page-list__item:nth-child(3) {
    order: 2;
  }

  .p-business-introduction-page__list03 .p-business-introduction-page-list__item:nth-child(1) {
    order: 1;
  }

  .p-business-introduction-page__list03 .p-business-introduction-page-list__item:nth-child(2) {
    order: 3;
  }

  .p-business-introduction-page__list03 .p-business-introduction-page-list__item:nth-child(3) {
    order: 5;
  }

  .p-business-introduction-page__list03 .p-business-introduction-page-list__item:nth-child(4) {
    order: 2;
  }

  .p-business-introduction-page__list03 .p-business-introduction-page-list__item:nth-child(5) {
    order: 4;
  }

  .p-business-introduction-page__list04 .p-business-introduction-page-list__item:nth-child(1) {
    order: 1;
  }

  .p-business-introduction-page__list04 .p-business-introduction-page-list__item:nth-child(2) {
    order: 3;
  }

  .p-business-introduction-page__list04 .p-business-introduction-page-list__item:nth-child(3) {
    order: 2;
  }

  .p-business-introduction-page__list04 .p-business-introduction-page-list__item:nth-child(4) {
    order: 4;
  }

  .p-business-introduction-page__text {
    margin-top: calc(8 / 16 * 1rem);
    padding-left: calc(16 / 16 * 1rem);
    padding-right: calc(16 / 16 * 1rem);
  }

  .p-staff-introduction-page__block {
    padding-bottom: calc(26 / 16 * 1rem);
  }

  .p-staff-introduction-page__info {
    display: none;
  }

  .p-staff-introduction-page_list {
    flex-direction: column;
    gap: calc(16 / 16 * 1rem);
    margin: calc(21 / 16 * 1rem) auto 0;
    max-width: calc(640 / 16 * 1rem);
  }

  .p-staff-introduction-page_list__item {
    flex: 1;
  }

  .p-staff-introduction-page_item__wrapper {
    display: flex;
    flex-direction: column-reverse;
    gap: calc(8 / 16 * 1rem);
  }

  .p-staff-introduction-page_item__body {
    background: #fff;
    padding-left: calc(16 / 16 * 1rem);
    padding-right: calc(16 / 16 * 1rem);
    text-align: center;
  }

  .p-staff-introduction-page_item__name {
    display: inline-block;
    padding-left: calc(18 / 16 * 1rem);
    padding-right: calc(18 / 16 * 1rem);
    position: relative;
  }

  .p-staff-introduction-page_item__name::before,
  .p-staff-introduction-page_item__name::after {
    content: "▼";
    display: block;
    font-size: calc(16 / 16 * 1rem);
    position: absolute;
    top: 0;
  }

  .p-staff-introduction-page_item__name::before {
    left: 0;
  }

  .p-staff-introduction-page_item__name::after {
    right: 0;
  }

  .p-introduction-page_fv__block {
    aspect-ratio: 343/168;
    background: url("../img/sp-fv_introduction01.jpg") no-repeat center top/cover;
  }

  .l-introduction02-page .p-introduction-page_fv__block {
    aspect-ratio: 343/168;
    background: url("../img/sp-fv_introduction02.jpg") no-repeat center top/cover;
  }

  .l-introduction03-page .p-introduction-page_fv__block {
    aspect-ratio: 343/168;
    background: url("../img/sp-fv_introduction03.jpg") no-repeat center top/cover;
  }

  .l-introduction04-page .p-introduction-page_fv__block {
    aspect-ratio: 343/168;
    background: url("../img/sp-fv_introduction04.jpg") no-repeat center top/cover;
  }

  .p-introduction-page_fv__cont {
    background: rgba(217, 217, 217, 0.59);
    max-width: calc(195 / 16 * 1rem);
    width: 52vw;
  }

  .p-introduction01-page_fv__cont {
    left: 0;
    padding: calc(6 / 16 * 1rem) calc(4 / 16 * 1rem);
    top: calc(10 / 16 * 1rem);
  }

  .p-introduction01-page_fv__cont .p-introduction-page_fv__name {
    margin-right: calc(10 / 16 * 1rem);
    margin-top: 4px;
  }

  .p-introduction02-page_fv__cont {
    left: 0;
    padding: calc(6 / 16 * 1rem) calc(2 / 16 * 1rem);
    top: calc(9 / 16 * 1rem);
  }

  .p-introduction03-page_fv__cont {
    padding: calc(6 / 16 * 1rem) calc(2 / 16 * 1rem);
    right: 0;
    top: calc(16 / 16 * 1rem);
  }

  .p-introduction04-page_fv__cont {
    bottom: calc(4 / 16 * 1rem);
    left: 0;
    padding: calc(6 / 16 * 1rem) calc(8 / 16 * 1rem);
  }

  .p-introduction-page_fv__lead {
    font-size: clamp(13px, 4.266vw, 16px);
    font-weight: 400;
    white-space: nowrap;
  }

  .p-introduction-page_fv__name {
    font-size: clamp(12px, 3.733vw, 14px);
    margin-top: calc(4 / 16 * 1rem);
  }

  .p-introduction02-page_fv__cont .p-introduction-page_fv__name {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-introduction03-page_fv__cont .p-introduction-page_fv__name {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-introduction04-page_fv__cont .p-introduction-page_fv__name {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-introduction-page__block {
    padding-bottom: calc(26 / 16 * 1rem);
    padding-top: calc(8 / 16 * 1rem);
  }

  .p-introduction-page__info {
    display: none;
  }

  .p-introduction-page__list {
    gap: calc(16 / 16 * 1rem);
  }

  .p-introduction-page_list__item:nth-child(1) .p-introduction-page_item__body {
    display: none;
  }

  .p-introduction-page_list__item:nth-child(3) .p-introduction-page_item__body {
    display: none;
  }

  .p-introduction-page_item__wrapper {
    flex-direction: column;
    gap: calc(8 / 16 * 1rem);
  }

  .p-introduction-page_item__title {
    font-size: calc(16 / 16 * 1rem);
    letter-spacing: 1.04px;
    line-height: 2.5;
  }

  .p-introduction-page_item__number::before {
    top: 0;
  }

  .p-introduction-page_item__number {
    font-size: calc(16 / 16 * 1rem);
    font-weight: bold;
    letter-spacing: 1.04px;
    line-height: 2.5;
    padding-left: calc(24 / 16 * 1rem);
  }

  .p-introduction-page_item__lead {
    font-size: calc(16 / 16 * 1rem);
    letter-spacing: 1.04px;
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-introduction-page_item__text {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-introduction-page_item__message {
    font-size: calc(16 / 16 * 1rem);
    line-height: 2.5;
    padding-left: calc(24 / 16 * 1rem);
    position: relative;
  }

  .p-introduction-page_item__message::before {
    background: #ccc;
    content: "";
    display: block;
    height: calc(40 / 16 * 1rem);
    left: 0;
    position: absolute;
    top: 0;
    width: calc(8 / 16 * 1rem);
  }

  .p-introduction-page_item__cheer {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-introduction-page_item__professional-message {
    margin-top: calc(14 / 16 * 1rem);
  }

  .p-introduction-page__name {
    padding-left: calc(16 / 16 * 1rem);
    padding-right: calc(16 / 16 * 1rem);
  }

  .l-introduction04-page .p-introduction-page_list__item:nth-child(3) .p-introduction-page_item__body {
    display: block;
  }

  .p-research-center-page_slide__cont {
    left: 50%;
    padding: calc(8 / 16 * 1rem) calc(32 / 16 * 1rem) calc(4 / 16 * 1rem);
    top: calc(7 / 16 * 1rem);
    width: calc(375 / 16 * 1rem);
  }

  .p-research-center-page_slide__name {
    font-size: calc(16 / 16 * 1rem);
    letter-spacing: 1.04px;
  }

  .p-research-center-page_slide__lead {
    margin-top: calc(14 / 16 * 1rem);
  }

  .p-research-center__slide .slider {
    height: 68.266vw;
    max-height: calc(280 / 16 * 1rem);
    min-height: calc(230 / 16 * 1rem);
  }

  .p-research-center-page_slider__copyright {
    font-size: calc(10 / 16 * 1rem);
    margin-right: calc(9 / 16 * 1rem);
  }

  .p-company-info-page_greeting__lead {
    font-weight: bold;
    letter-spacing: 1.04px;
    margin-top: calc(12 / 16 * 1rem);
  }

  .p-company-info-page_greeting__block {
    flex-direction: column;
    margin-top: calc(12 / 16 * 1rem);
  }

  .p-company-info-page_greeting-cont02__body {
    margin-top: calc(10 / 16 * 1rem);
  }

  .p-company-info-page_greeting-cont02__position {
    font-size: calc(12 / 16 * 1rem);
    letter-spacing: 0.65px;
  }

  .p-company-info-page_greeting-cont02__name {
    font-size: calc(16 / 16 * 1rem);
    font-weight: bold;
    letter-spacing: 1.04px;
  }

  .p-company-info-page_overview__block {
    padding: calc(8 / 16 * 1rem) calc(8 / 16 * 1rem) calc(8 / 16 * 1rem) calc(8 / 16 * 1rem);
  }

  .p-company-info-page_overview__list {
    /* 上下の余白 */
    gap: calc(11 / 16 * 1rem);
  }

  .p-company-info-page_overview-item__term {
    flex: 0 0 calc(100 / 16 * 1rem);
  }

  .p-company-info-page_overview-item__desc {
    flex: 0 1 calc(100% - 100px);
  }

  .p-company-info-page_overview-item__desc02,
  .p-company-info-page_overview-item__desc03,
  .p-company-info-page_overview-item__desc04 {
    margin-left: calc(100 / 16 * 1rem);
  }

  .p-company-info-page_company-values__block {
    padding-bottom: calc(4 / 16 * 1rem);
    padding-top: calc(4 / 16 * 1rem);
  }

  .p-company-info-page_company-value__lead {
    font-weight: bold;
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-company-info-page_organization__block {
    padding-bottom: calc(8 / 16 * 1rem);
    padding-top: calc(4 / 16 * 1rem);
  }

  .p-company-info-page_organization__img {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-company-info-page_address__list {
    /* 上下の余白 */
    gap: calc(20 / 16 * 1rem);
  }

  .p-company-info-page_list__item {
    padding-left: calc(24 / 16 * 1rem);
  }

  .p-company-info-page_item__term {
    flex: 0 0 calc(100 / 16 * 1rem);
    padding-left: calc(12 / 16 * 1rem);
    padding-right: calc(12 / 16 * 1rem);
  }

  .p-company-info-page_item__desc {
    flex: 1;
    flex-direction: column;
    gap: calc(8 / 16 * 1rem);
  }

  .p-company-info-page_item-desc__inline {
    flex: 1;
  }

  .p-contact__block {
    padding-bottom: calc(26 / 16 * 1rem);
    padding-top: calc(8 / 16 * 1rem);
  }

  .p-contact__title {
    line-height: 2.5;
    padding-left: calc(24 / 16 * 1rem);
    position: relative;
  }

  .p-contact__title::before {
    background: #ccc;
    content: "";
    height: calc(40 / 16 * 1rem);
    left: 0;
    position: absolute;
    top: 0;
    width: calc(8 / 16 * 1rem);
  }

  .p-contact__list {
    gap: calc(8 / 16 * 1rem);
  }

  .p-contact-item__term {
    flex: 0 0 calc(142 / 16 * 1rem);
  }

  .p-contact-item__desc a[href*="tel:"] {
    pointer-events: auto;
  }

  .p-fax-desc {
    pointer-events: none;
    text-decoration: none;
  }

  .p-research-center-page__wrapper {
    padding-top: calc(6 / 16 * 1rem);
  }

  .p-research-center-page__block01 {
    padding-bottom: calc(13 / 16 * 1rem);
  }

  .p-research-center-page_cont01__body {
    display: none;
  }

  .p-research-center-page__copyright {
    font-size: calc(10 / 16 * 1rem);
  }

  .p-research-center-page__block02 {
    padding-bottom: calc(13 / 16 * 1rem);
    padding-top: calc(13 / 16 * 1rem);
  }

  .p-research-center-page_block__title {
    font-size: calc(16 / 16 * 1rem);
    letter-spacing: 1.04px;
    line-height: 2.5;
    padding-left: calc(24 / 16 * 1rem);
    position: relative;
  }

  .p-research-center-page_block__title::before {
    background: #ccc;
    content: "";
    height: calc(40 / 16 * 1rem);
    left: 0;
    position: absolute;
    top: 0;
    width: calc(8 / 16 * 1rem);
  }

  .p-research-center-page_video {
    aspect-ratio: 345/190;
    margin-top: calc(10 / 16 * 1rem);
  }

  .p-research-center-page__block03 {
    padding-top: calc(13 / 16 * 1rem);
  }

  .p-research-center-page_research-center__img {
    aspect-ratio: 343/143;
    margin-top: calc(10 / 16 * 1rem);
  }

  .p-careers-page_message__position {
    display: none;
  }

  .p-careers-page_message__name {
    display: none;
  }

  .p-careers-page_job__info {
    font-size: calc(14 / 16 * 1rem);
    margin-top: calc(8 / 16 * 1rem);
    text-align: center;
  }

  .p-careers-page_job__info span {
    display: inline-block;
    text-align: left;
  }

  .p-careers-page_job__list {
    gap: calc(14 / 16 * 1rem);
  }

  .p-careers-page_job-item__term {
    flex: 0 0 calc(84 / 16 * 1rem);
  }

  .p-careers-page_job-item__desc {
    flex: 0 1 calc(100% - 84px);
  }

  .p-careers-page_job-item__desc02,
  .p-careers-page_job-item__desc03,
  .p-careers-page_job-item__desc04,
  .p-careers-page_job-item__desc05,
  .p-careers-page_job-item__desc06 {
    margin-left: calc(84 / 16 * 1rem);
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-careers-page_internship__text {
    margin-top: calc(8 / 16 * 1rem);
  }

  .p-careers-page_internship__list {
    flex-direction: column;
    gap: calc(16 / 16 * 1rem);
    margin-top: calc(16 / 16 * 1rem);
  }

  .p-careers-page_internship-list__item {
    width: 100%;
  }

  .l-careers-page .p-contact__block {
    padding-bottom: calc(26 / 16 * 1rem);
    padding-top: calc(13 / 16 * 1rem);
  }

  .p-financial-statements-page__cont {
    flex-direction: column;
    gap: 20px;
  }

  .p-financial-statements-page__head {
    margin: calc(16 / 16 * 1rem) auto 0;
    max-width: calc(640 / 16 * 1rem);
  }

  .p-financial-statements-page-head__lead {
    margin-left: 24px;
    font-weight: bold;
    font-size: 16px;
  }

  .p-financial-statements-page__list {
    gap: calc(25 / 16 * 1rem);
    padding-bottom: calc(12 / 16 * 1rem);
    padding-left: clamp(6px, 2vw, 12px);
    padding-right: clamp(6px, 2vw, 12px);
    padding-top: calc(12 / 16 * 1rem);
    margin-top: 13px;
  }

  .p-financial-statements-page__info {
    font-size: calc(14 / 16 * 1rem);
    margin-bottom: calc(26 / 16 * 1rem);
    margin-top: calc(16 / 16 * 1rem);
    text-align: center;
  }

  .u-sp-none {
    display: none;
  }

  .u-section-title__wrapper {
    display: contents;
  }

  .u-sp-contents {
    display: contents;
  }

  .u-inner__sp-none {
    padding: 0;
  }
}

@media screen and (max-width: 373px) {
  .l-research-center-page .c-section__title {
    font-size: 14px;
    letter-spacing: 1.04px;
    line-height: 2.857;
    padding-left: calc(12 / 16 * 1rem);
    white-space: nowrap;
  }

  .p-company-info-page_overview__list {
    gap: calc(16 / 16 * 1rem);
  }

  .p-company-info-page_overview-list__item {
    flex-direction: column;
    gap: calc(8 / 16 * 1rem);
  }

  .p-company-info-page_overview-item__term {
    flex: 1;
    font-weight: bold;
  }

  .p-company-info-page_overview-item__desc02,
  .p-company-info-page_overview-item__desc03,
  .p-company-info-page_overview-item__desc04 {
    margin-left: 0;
  }

  .p-company-info-page_address__list {
    gap: calc(24 / 16 * 1rem);
  }

  .p-company-info-page_list__item {
    flex-direction: column;
    gap: calc(12 / 16 * 1rem);
  }

  .p-company-info-page_list__item {
    padding-left: 0;
  }

  .p-company-info-page_item__term {
    flex: 1;
    font-weight: bold;
  }

  .p-contact__list {
    gap: calc(16 / 16 * 1rem);
  }

  .p-contact-list__item {
    align-items: flex-start;
    flex-direction: column;
    gap: calc(8 / 16 * 1rem);
  }

  .p-contact-item__term {
    flex: 1;
    font-weight: bold;
    padding-left: 0;
  }

  .p-careers-page_job__list {
    gap: calc(16 / 16 * 1rem);
  }

  .p-careers-page_job-list__item {
    flex-direction: column;
    gap: calc(8 / 16 * 1rem);
  }

  .p-careers-page_job-item__term {
    flex: 1;
    font-weight: bold;
  }

  .p-careers-page_job-item__desc {
    flex: 1;
  }

  .p-careers-page_job-item__desc02,
  .p-careers-page_job-item__desc03,
  .p-careers-page_job-item__desc04,
  .p-careers-page_job-item__desc05,
  .p-careers-page_job-item__desc06 {
    margin-left: 0;
    margin-top: 0;
  }
}
