@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap"); /*** The new CSS reset - version 1.5.1 (last updated 1.3.2022) ***/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Rubik:wght@700&display=swap");
body {
  margin: 0;
  padding: 0;
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
a,
ul {
  margin: 0;
  padding: 0;
}

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

a,
button {
  cursor: revert;
}

ol,
ul,
menu {
  list-style: none;
}

img {
  max-width: 100%;
}

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
       appearance: revert;
}

::-moz-placeholder {
  color: unset;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

html {
  font-size: 62.5%;
}
@media screen and (max-width: 1199px) and (min-width: 768px) {
  html {
    font-size: 0.82vw;
  }
}
@media screen and (max-width: 400px) {
  html {
    font-size: 2.4vw;
  }
}

@font-face {
  font-family: "Hiragino";
  src: url("../font/HiraKakuProN-W4-AlphaNum-01.otf") format("opentype");
}
body {
	font-family: "Hiragino Kaku Gothic StdN", sans-serif;
	color: #333333;
	font-size: 1.6rem;
	line-height: 1.875;
	letter-spacing: 0.1em;
	font-weight: 400;
	overflow-x: hidden;
}

a {
  display: inline-block;
  text-decoration: none;
  color: inherit;
}
@media (hover: hover) {
  a:hover {
    cursor: pointer;
  }
}

.l-wrapper {
  display: flex;
  overflow: hidden;
}

.l-container {
  flex: 1;
}

.l-header {
  width: 100%;
  height: 10.5rem;
  box-shadow: 0 0.5rem 0.6rem rgba(0, 0, 0, 0.16);
  background: #ffffff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
@media screen and (max-width: 767px) {
  .l-header {
    height: 6rem;
  }
}

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

.l-footer {
  background: #E8EEF3;
  padding-top: 10.4rem;
  padding-bottom: 4.7rem;
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.l-footer__bg-white--sp .l-footer {
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .l-footer__bg-white--sp .l-footer {
    background: #ffffff;
  }
}

.l-footer__wrapper {
  display: flex;
  justify-content: space-between;
  margin-bottom: 7.8rem;
}
@media screen and (max-width: 767px) {
  .l-footer__wrapper {
    display: block;
    margin-bottom: 5.4rem;
  }
}

.l-footer__copyright {
  text-align: center;
  background: #0053A3;
  padding-top: 3.5rem;
  padding-bottom: 2rem;
}
.l-footer__copyright p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  line-height: 1.2142857143;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .l-footer__copyright {
    padding-top: 3.7rem;
    padding-bottom: 3.5rem;
  }
  .l-footer__copyright p {
    font-size: 1.1rem;
    line-height: 1.1818181818;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.l-inner {
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-inner {
    box-sizing: content-box;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 3rem;
    padding-right: 3rem;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-inner {
    width: 100%;
    max-width: 60rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
    height: inherit;
  }
}

.l-innerHeader {
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-innerHeader {
    box-sizing: content-box;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 3rem;
    padding-right: 3rem;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-innerHeader {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
    height: inherit;
  }
}

.l-inner--top-mv {
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-inner--top-mv {
    box-sizing: content-box;
    max-width: 162.4rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 3rem;
    padding-right: 3rem;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-inner--top-mv {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
    height: inherit;
  }
}

.l-inner--top-service {
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-inner--top-service {
    box-sizing: content-box;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12rem;
    padding-right: 12rem;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-inner--top-service {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
    height: inherit;
  }
}

.l-inner--top-sports {
  position: relative;
  overflow-x: hidden;
}

.l-page-main {
  padding-top: 12rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-page-main {
    padding: 6rem 0;
  }
}

.l-top-mv {
  background: #E8EEF3;
  position: relative;
  margin-top: 10.5rem;
  height: 90.2rem;
}
.l-top-mv::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -2rem;
  left: 0;
  width: calc((100vw - 1624px) / 2 + 800px);
  height: 86.4rem;
  background-image: url(../img/top/top-mv-bg.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}
@media screen and (max-width: 1680px) {
  .l-top-mv {
    height: 53.69vw;
  }
}
@media screen and (max-width: 767px) {
  .l-top-mv {
    margin-top: 6rem;
    height: 100%;
  }
  .l-top-mv::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: -2rem;
    left: 0;
    width: 72%;
    height: auto;
    aspect-ratio: 285/230;
    background-image: url(../img/top/top-mv-bg.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
  }
}

@keyframes newsSlide {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  16% {
    opacity: 1;
    transform: translateY(0);
  }
  33% {
    opacity: 1;
    transform: translateY(0);
  }
  49% {
    opacity: 0;
    transform: translateY(-100%);
  }
  100% {
    opacity: 0;
  }
}
.l-top-mv .news_slide {
  overflow: hidden;
  position: relative;
  height: 4rem;
  width: 64rem;
  line-height: 1.5;
}
.l-top-mv .news_slide a {
	display: none;
	line-height: 2.4;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	transition: 2s linear transform .2s;
}
.l-top-mv .news_slide a:first-child {
	display: block;
}
.l-top-mv .news_slide a .zoom {
	transform: scale(1.05);
}

@media screen and (max-width: 767px) {
  .l-top-mv .news_slide {
    overflow: hidden;
    position: relative;
    height: 8rem;
    width: 100%;
  }
	.l-top-mv .news_slide a {
		line-height: 1.4;
		padding-top: 2rem;
	}
}

.l-top-about {
  margin-top: 17.3rem;
  margin-bottom: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-top-about {
    margin-top: 24rem;
    margin-bottom: 12.8vw;
  }
}

.l-top-service {
  padding-top: 8.2rem;
  padding-bottom: 21.6rem;
  background: #0053A3;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-top-service {
    padding-top: 12.8vw;
    padding-bottom: 5rem;
  }
}

.l-top-contact {
  padding-top: 8.2rem;
  padding-bottom: 9rem;
  background: #0053A3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-top-contact {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}
.l-top-contact::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background-image: url(../img/icon/top-contact-circ.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
  .l-top-contact::after {
    width: 70%;
    background-image: url(../img/icon/top-contact-circ-sp.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
  }
}

.l-top-recruit {
  padding-top: 8rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-top-recruit {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.l-top-corporate {
  padding-top: 8.2rem;
  background: #0053A3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-top-corporate {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}
.l-top-corporate::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 74.8rem;
  height: 60.7rem;
  background: url(../img/icon/triangle.png);
}
@media screen and (max-width: 767px) {
  .l-top-corporate::before {
    width: 50%;
    height: auto;
    aspect-ratio: 202/164;
  }
}

.l-top-sdgs {
  padding-top: 9rem;
  padding-bottom: 9rem;
  background: #E8EEF3;
  position: relative;
}
.l-top-sdgs::after {
  content: "";
  position: absolute;
  z-index: 0;
  bottom: calc(100% - 2px);
  left: 0;
  width: 100%;
  height: 26rem;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .l-top-sdgs::after {
    display: none;
  }
}

.l-top-information {
  padding-top: 8.2rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-top-information {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.l-top-sports {
  padding-top: 8.3rem;
  padding-bottom: 7rem;
  background: #0053A3;
  position: relative;
}
.l-top-sports::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 48rem;
  height: 100%;
  background-image: url(../img/top/top-sports-circ-bg.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
  .l-top-sports {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
  .l-top-sports::after {
    width: 74%;
    height: auto;
    aspect-ratio: 290/306;
    background-image: url(../img/top/top-sports-circ-bg-sp.png);
  }
}

.l-page-mv {
  margin-top: 10.5rem;
  width: 100%;
  height: 50.5rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-page-mv {
    margin-top: 6rem;
    width: 100%;
    height: 60vw;
    max-height: 50.5rem;
  }
}
@media screen and (max-width: 767px) and (min-width: 500px) {
  .l-page-mv {
    height: 40vw;
  }
}
.l-page-mv::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: calc((100vw - 1200px) / 2 + 540px);
  height: 100%;
  background: url(../img/icon/trapezoid-bg.png);
  background-position: right center;
  background-size: auto 100%;
}
@media screen and (max-width: 1260px) {
  .l-page-mv::after {
    width: calc((100vw - 1200px) / 2 + 570px);
  }
}
@media screen and (min-width: 1800px) {
  .l-page-mv::after {
    background-size: 100% 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-page-mv::after {
    width: 55.64%;
    height: 100%;
    background: url(../img/icon/trapezoid-bg-sp.png);
    background-size: 100% 100%;
  }
}
.l-page-mv.information {
  background: url(../img/page-information/mv-info.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.l-page-mv.exclusive {
  background: url(../img/page-exclusive/mv.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.l-page-mv.company {
  background: url(../img/page-information/mv-info.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.l-page-mv.strength {
  background: url(../img/page-strength/mv.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .l-page-mv.strength {
    background: url(../img/page-strength/mv-sp.png);
    background-position: center center;
    background-size: cover;
  }
}
.l-page-mv.service {
  background: url(../img/page-information/mv-info.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.l-page-mv.recruit {
  background: url(../img/page-recruit/mv.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.l-page-mv.bidding_info {
  background: url(../img/page-bidding_info/mv.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.l-company__link {
  padding-top: 6.8rem;
  margin-top: 13.4rem;
  margin-bottom: 12rem;
  position: relative;
}
.l-company__link::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 24rem;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .l-company__link::after {
    height: 100%;
  }
}
.l-company__link.page-recruit {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .l-company__link {
    padding-bottom: 6rem;
    margin-bottom: 0;
  }
}

.l-information-news {
  width: 100%;
  max-width: 88rem;
  margin: 0 auto;
  margin-top: 6rem;
}

.l-underPage-main {
  margin-top: 10.5rem;
  margin-bottom: 12.2rem;
  position: relative;
}
.l-underPage-main.sdgs {
  margin-bottom: 0;
}
.l-underPage-main::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -3rem;
  left: 0;
  width: calc((100vw - 1200px) / 2 + 150px);
  height: auto;
  aspect-ratio: 592/446;
  background-image: url(../img/icon/under-title-bg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right top;
}
@media screen and (min-width: 1700px) {
  .l-underPage-main::after {
    background-size: 100% 100%;
  }
}
@media screen and (max-width: 1550px) {
  .l-underPage-main::after {
    width: 30rem;
  }
}
@media screen and (max-width: 767px) {
  .l-underPage-main::after {
    top: -2rem;
    width: 20%;
    height: auto;
    aspect-ratio: 78/100;
    background-size: 100% 100%;
  }
}
@media screen and (max-width: 767px) and (min-width: 600px) {
  .l-underPage-main::after {
    aspect-ratio: 1;
  }
}
@media screen and (max-width: 767px) {
  .l-underPage-main {
    margin: 6rem 0;
  }
}

.l-company-overview__about {
  padding-top: 12rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-company-overview__about {
    padding: 6rem 0;
  }
}

.l-company-overview__organization {
  background: #E8EEF3;
  padding-top: 12rem;
  padding-bottom: 10rem;
}
@media screen and (max-width: 767px) {
  .l-company-overview__organization {
    padding: 6rem 0;
  }
}

.l-company-overview__history {
  padding: 15.2rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-company-overview__history {
    padding: 6rem 0 0;
  }
}

.l-company-overview__qualified {
  padding-top: 12rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-company-overview__qualified {
    padding-top: 6rem;
    margin-bottom: 6rem;
  }
}

.l-company-overview__link {
  padding-top: 6.8rem;
  margin-bottom: 12rem;
  position: relative;
}
.l-company-overview__link::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 24rem;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .l-company-overview__link {
    margin-bottom: 0;
    padding-bottom: 5rem;
  }
  .l-company-overview__link::after {
    height: 100%;
  }
}

.l-company-wakou__message {
  margin-top: 12rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-company-wakou__message {
    margin: 6rem 0;
  }
}

.l-company-wakou__philosophy {
  background: #E8EEF3;
  padding: 12rem 0;
}
@media screen and (max-width: 767px) {
  .l-company-wakou__philosophy {
    padding: 6rem 0 0;
  }
}

.l-company-wakou__vision {
  background: #E8EEF3;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-company-wakou__vision {
    padding: 6rem 0;
  }
}

.l-company-wakou__education {
  margin: 12rem 0;
}
@media screen and (max-width: 767px) {
  .l-company-wakou__education {
    margin: 6rem 0;
  }
}

.l-strength__head-contents {
  margin-top: 9.2rem;
  margin-bottom: 11.2rem;
}
@media screen and (max-width: 767px) {
  .l-strength__head-contents {
    margin-top: 0;
    margin-bottom: 5rem;
  }
}

.l-strength__points-contents {
  background: #E8EEF3;
  padding: 12rem 0 0;
}
@media screen and (max-width: 767px) {
  .l-strength__points-contents {
    padding: 5rem 0 3.5rem;
  }
}

.l-strength__detail-contents {
  padding-top: 12rem;
  background: #E8EEF3;
  padding-bottom: 20rem;
}
@media screen and (max-width: 767px) {
  .l-strength__detail-contents {
    padding-top: 6rem;
    padding-bottom: 5rem;
  }
}

.l-strength__detail-content-wrapper {
  background: #ffffff;
  width: calc(100% + 160px);
  margin-left: -8rem;
  padding: 10rem 8rem 10rem;
}
@media screen and (max-width: 1420px) {
  .l-strength__detail-content-wrapper {
    width: 100%;
    margin-left: 0;
    padding: 10rem 2rem 10rem;
  }
}
@media screen and (max-width: 767px) {
  .l-strength__detail-content-wrapper {
    padding: 4.2rem 2rem;
  }
}

.l-sdgs__head-contents {
  margin-top: 12rem;
  padding-top: 12rem;
  padding-bottom: 19.5rem;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .l-sdgs__head-contents {
    margin-top: 3.7rem;
    padding-top: 4rem;
    padding-bottom: 2rem;
    position: relative;
  }
  .l-sdgs__head-contents::after {
    content: "";
    position: absolute;
    z-index: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10%;
    background: #ffffff;
  }
}

.l-sdgs__main-contents {
  padding-top: 44.7rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-sdgs__main-contents {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.l-sdgs__biosphere {
  overflow-x: hidden;
  padding-bottom: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-sdgs__biosphere {
    padding-bottom: 5rem;
  }
}
.l-sdgs__biosphere::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: calc((100vw - 1200px) / 2 * -1);
  width: calc((100vw - 1260px) / 2 + 926px);
  height: 46.3rem;
  background-image: url(../img/company/biosphere-img.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: cover;
}
@media screen and (min-width: 1920px) {
  .l-sdgs__biosphere::after {
    background-size: 100% 100%;
  }
}
@media screen and (max-width: 1260px) {
  .l-sdgs__biosphere::after {
    right: -3rem;
    width: 92.6rem;
    height: 46.3rem;
    background-size: contain 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-sdgs__biosphere::after {
    top: 10rem;
    width: calc(100% + 4rem);
    height: auto;
    aspect-ratio: 390/209;
    right: -2rem;
  }
}

.l-sdgs__society {
  overflow-x: hidden;
  padding-bottom: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-sdgs__society {
    padding-bottom: 5rem;
    overflow-x: hidden;
  }
}
.l-sdgs__society::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: calc((100vw - 1200px) / 2 * -1);
  width: calc((100vw - 1260px) / 2 + 926px);
  height: 46.3rem;
  border-top-right-radius: 1rem;
  border-bottom-right-radius: 1rem;
  background-image: url(../img/company/society-img.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: cover;
}
@media screen and (min-width: 1920px) {
  .l-sdgs__society::after {
    background-size: 100% 100%;
  }
}
@media screen and (max-width: 1260px) {
  .l-sdgs__society::after {
    left: -3rem;
    width: 92.6rem;
    height: 46.3rem;
    background-size: contain 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-sdgs__society::after {
    top: 10rem;
    width: calc(100% + 6rem);
    height: auto;
    aspect-ratio: 390/209;
    right: -4rem;
  }
}

.l-sdgs__economy {
  overflow-x: hidden;
  position: relative;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-sdgs__economy {
    padding-bottom: 6rem;
  }
}
.l-sdgs__economy::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: calc((100vw - 1200px) / 2 * -1);
  width: calc((100vw - 1260px) / 2 + 926px);
  height: 46.3rem;
  background-image: url(../img/company/economy-img.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: cover;
}
@media screen and (min-width: 1920px) {
  .l-sdgs__economy::after {
    background-size: 100% 100%;
  }
}
@media screen and (max-width: 1260px) {
  .l-sdgs__economy::after {
    right: -3rem;
    width: 92.6rem;
    height: 46.3rem;
    background-size: contain 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-sdgs__economy::after {
    top: 10rem;
    width: calc(100% + 4rem);
    height: auto;
    aspect-ratio: 390/209;
    right: -2rem;
  }
}

.l-sdgs__image-contents {
  background: linear-gradient(to bottom, #E8EEF3 50%, #fff 50%);
}

.l-sdgs__image-contents .l-inner {
  padding: 0;
  position: relative;
  z-index: 1;
}

.l-sdgs__image-contents .l-inner::before {
  background: linear-gradient(45deg, rgba(0, 83, 163, 0.55), #185DAE);
  content: "";
  display: block;
  position: absolute;
  left: 10px;
  top: 10px;
  height: 100%;
  width: calc(100% - 5px);
  z-index: -1;
}

.l-sdgs__image-contents .sdgs__inner {
  align-items: center;
  background-color: #fff;
  border: solid 2px #0034A1;
  display: flex;
  padding: 40px;
  position: relative;
  width: calc(100% - 5px);
}

.l-sdgs__image-contents .sdgs__goals {
  width: 430px;
}

.l-sdgs__image-contents .sdgs__goals p {
  margin-bottom: 40px;
}

.l-sdgs__image-contents .sdgs__goals figure {
  margin: 0 auto;
  width: 360px;
}

.l-sdgs__image-contents .sdg__icons {
  display: flex;
  flex-wrap: wrap;
  margin-left: auto;
  padding-top: 10px;
  width: 620px;
}

.l-sdgs__image-contents .sdg__icons img {
  margin: 0 5px 10px;
  width: calc(16.6666% - 10px);
}

.l-sdgs__image-contents .sdg__icons img.wheel {
  background-color: #F3F3F5;
}

@media screen and (max-width: 767px) {
  .l-sdgs__image-contents {
    background: linear-gradient(to bottom, #E8EEF3 70%, #fff 70%);
  }
  .l-sdgs__image-contents .l-inner {
    padding: 0 2rem;
  }
  .l-sdgs__image-contents .l-inner::before {
    display: none;
  }
  .l-sdgs__image-contents .sdgs__inner {
    align-items: center;
    background-color: #fff;
    border: solid 2px #0034A1;
    display: flex;
    padding: 40px;
    position: relative;
    width: 100%;
  }
  .l-sdgs__image-contents .sdgs__goals {
    width: 430px;
  }
  .l-sdgs__image-contents .sdgs__goals p {
    margin-bottom: 40px;
  }
  .l-sdgs__image-contents .sdgs__goals figure {
    margin: 0 auto;
    width: 360px;
  }
  .l-sdgs__image-contents .sdg__icons {
    display: flex;
    flex-wrap: wrap;
    margin-left: auto;
    padding-top: 10px;
    width: 620px;
  }
  .l-sdgs__image-contents .sdg__icons img {
    margin: 0 5px 10px;
    width: calc(16.6666% - 10px);
  }
  .l-sdgs__image-contents .sdg__icons img.wheel {
    background-color: #F3F3F5;
  }
}
.l-footer-service {
  padding-top: 8.2rem;
  padding-bottom: 11rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-footer-service {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.l-footer-service::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  width: calc((100vw - 1200px) / 2 + 400px);
  height: 70rem;
  background: url(../img/icon/triangle.png);
}
@media screen and (max-width: 1260px) {
  .l-footer-service::before {
    width: 50rem;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-service::before {
    display: none;
  }
}
.l-footer-service::after {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 32rem;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .l-footer-service::after {
    display: none;
  }
}

.l-service__strength-contents {
  margin-top: 16.2rem;
  margin-bottom: 11.6rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-service__strength-contents {
    margin-top: 5rem;
    margin-bottom: 5rem;
  }
}

.l-service__features {
  padding-top: 12rem;
  padding-bottom: 12rem;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .l-service__features {
    padding: 6rem 0;
  }
}

.l-service-cleaning__knowHow {
  padding-top: 12rem;
}
@media screen and (max-width: 767px) {
  .l-service-cleaning__knowHow {
    padding-top: 6rem;
  }
}

.l-service__works {
  margin-top: 12rem;
  margin-bottom: 28rem;
}
@media screen and (max-width: 767px) {
  .l-service__works {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}

.l-service-facility__detail {
  margin-top: -12rem;
  padding-top: 24rem;
  margin-bottom: 16.5rem;
}
@media screen and (max-width: 767px) {
  .l-service-facility__detail {
    margin-top: -6rem;
    padding-top: 12rem;
    margin-bottom: 6rem;
  }
}

.l-service-option__main-contents {
  margin-bottom: 16rem;
}
@media screen and (max-width: 767px) {
  .l-service-option__main-contents {
    margin-bottom: 6rem;
  }
}

.l-recruit-important {
  background: #E8EEF3;
  margin-top: 12rem;
  padding-top: 12rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-recruit-important {
    margin-top: 6rem;
    padding: 6rem 0;
  }
}

.l-recruit-welfare {
  padding-top: 12rem;
  padding-bottom: 12rem;
}
.l-recruit-welfare.bg {
  background: #E8EEF3;
}
.l-recruit-welfare.base {
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .l-recruit-welfare {
    padding: 6rem 0;
  }
}

.l-recruit-top-interview {
  padding-top: 12rem;
  padding-bottom: 12rem;
  background: #0053A3;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .l-recruit-top-interview {
    padding: 6rem 0 2rem;
  }
}

.l-recruit-top-requirement {
  padding-top: 12rem;
  padding-bottom: 12rem;
}
.l-recruit-top-requirement.recruit-interview {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .l-recruit-top-requirement {
    padding: 6rem 0;
  }
}

/*----------------------------------
    インタビュー　一覧ページ
-----------------------------------*/
.l-recruit-interview__wrapper {
  margin-top: 8.8rem;
  width: 100rem;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .l-recruit-interview__wrapper {
    width: 100%;
    margin-top: 6rem;
  }
}

.l-recruit-interview__enjoy {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .l-recruit-interview__enjoy {
    margin-top: 6rem;
  }
}

/*----------------------------------
    インタビュー　詳細ページ
-----------------------------------*/
.l-recruit-interview__head-contents {
  margin-top: 12rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-recruit-interview__head-contents {
    margin: 6rem 0;
  }
}

.l-recruit-interview__main-contents {
  width: 102.6rem;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .l-recruit-interview__main-contents {
    width: 100%;
  }
}

.l-recruit-graduate__requirement {
  margin-top: 12rem;
  margin-top: -12rem;
  padding-top: 24rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-recruit-graduate__requirement {
    margin: 6rem 0;
    margin-top: -6rem;
    padding-top: 12rem;
  }
}

.l-recruit-career__main-contents {
  margin-top: 12rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-recruit-career__main-contents {
    margin: 6rem 0;
  }
}

.l-cooperation-anzen__main-contents {
  margin-top: 5rem;
  margin-bottom: 16.7rem;
}
@media screen and (max-width: 767px) {
  .l-cooperation-anzen__main-contents {
    margin: 3rem 0 6rem;
  }
}

.l-access__main-office {
  margin-top: 12rem;
  margin-bottom: 13.3rem;
}
@media screen and (max-width: 767px) {
  .l-access__main-office {
    margin: 6rem 0;
  }
}

.l-access__main-office-map {
  position: relative;
  width: 100%;
  padding-top: 22.92%; /* = height ÷ width × 100 */
}
@media screen and (max-width: 767px) {
  .l-access__main-office-map {
    padding-top: 70%;
  }
}
.l-access__main-office-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.l-access__branch-office {
  margin-top: 12rem;
  margin-bottom: 13.3rem;
}
@media screen and (max-width: 767px) {
  .l-access__branch-office {
    margin: 6rem 0;
  }
}

.l-access__group-company {
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-access__group-company {
    margin-bottom: 6rem;
  }
}

.l-privacy-policy__main {
  margin-top: 12.5rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .l-privacy-policy__main {
    margin: 6rem 0;
  }
}

.l-404__main-contents {
  margin-top: 18.8rem;
  margin-bottom: 12rem;
  text-align: center;
  position: relative;
}
.l-404__main-contents::after {
  display: none;
  content: "";
  position: absolute;
  top: -14rem;
  right: 13rem;
  width: 15.4rem;
  height: 15rem;
  background-image: url(../img/page-recruit/interview-main-top-icon.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.l-404__main-contents .title {
  font-size: 6rem;
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 6rem;
}
.l-404__main-contents .text {
  font-size: 2rem;
  line-height: 2.3;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .l-404__main-contents {
    margin: 6rem 0;
  }
  .l-404__main-contents .text {
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

.l-maintenance__main-contents {
  width: 90rem;
  margin: 12rem auto;
  background: #E8EEF3;
  padding: 5rem 4.5rem 6rem 5.5rem;
  position: relative;
}
.l-maintenance__main-contents::after {
  content: "";
  position: absolute;
  top: -4rem;
  right: -4rem;
  width: 18.3rem;
  height: 17.4rem;
  background-image: url(../img/icon/digital-icon.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .l-maintenance__main-contents {
    width: 100%;
    margin: 6rem 0;
    padding: 0 2rem;
    background: #ffffff;
  }
  .l-maintenance__main-contents::after {
    display: none;
  }
}
.l-maintenance__main-contents h2 {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .l-maintenance__main-contents h2 {
    font-size: 2rem;
    line-height: 2;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
}
.l-maintenance__main-contents p {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .l-maintenance__main-contents p {
    font-size: 1.4rem;
    line-height: 1.8571428571;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.l-maintenance__main-contents .tel {
  display: flex;
  align-items: center;
}
.l-maintenance__main-contents .tel img {
  width: 4.8rem;
  height: 3.1rem;
  margin-right: 1.5rem;
}
.l-maintenance__main-contents .tel .number {
  font-family: "Arial", "Noto Sans JP", sans-serif;
  font-size: 4rem;
  line-height: 1.125;
  letter-spacing: 0em;
  font-weight: 700;
  position: relative;
}
.l-maintenance__main-contents .tel .number span {
  font-family: "Hiragino Kaku Gothic StdN", sans-serif;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.1em;
  font-weight: 400;
  position: absolute;
  top: 100%;
  left: 0;
}

.l-contact-head {
  background: #E8EEF3;
  margin: 12.7rem 0 12rem;
  padding: 5.5rem 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .l-contact-head {
    margin: 6rem 0;
  }
}

.l-contact-form {
  padding: 5rem 4rem;
  border: 1px solid #0053A3;
  width: 90rem;
  margin: 0 auto;
  margin-top: 6rem;
}
.l-contact-form.confirm {
  margin-top: 12.7rem;
}
@media screen and (max-width: 767px) {
  .l-contact-form.confirm {
    margin-top: 6rem;
  }
}
.l-contact-form.success {
  margin-top: 12.7rem;
  margin-bottom: 7rem;
  padding: 4.8rem 5.5rem 8.6rem;
}
@media screen and (max-width: 767px) {
  .l-contact-form.success {
    margin-top: 6rem;
    padding: 4rem 2rem;
  }
}
@media screen and (max-width: 767px) {
  .l-contact-form {
    width: 100%;
    padding: 4rem 2rem;
  }
}

@media screen and (max-width: 767px) {
  .c-btn {
    text-align: center;
    width: 100%;
    position: relative;
    z-index: 1;
    overflow: hidden;
  }
}
.c-btn a {
  display: inline-block;
  text-align: center;
  padding: 2.1rem 2.5rem 1.7rem 4.5rem;
  min-width: 28rem;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.15em;
  font-weight: 700;
  border-radius: 3rem;
  position: relative;
  z-index: 2;
}
.c-btn a i {
  margin-left: 3rem;
  font-size: 1.5rem;
}
.c-btn a.sdgs i {
  margin-left: 1.5rem;
}
.c-btn a.top-information {
  padding-left: 3rem;
  min-width: 24rem;
}
.c-btn a.top-information i {
  margin-left: 1rem;
}
.c-btn a.recruit-career {
  min-width: 25rem;
}
@media screen and (max-width: 400px) {
  .c-btn a.wakou, .c-btn a.sdgs {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-btn a {
    font-size: 1.5rem;
    line-height: 1.7333333333;
    letter-spacing: 0.15em;
    font-weight: 700;
    padding: 1.2rem 2.5rem 1.2rem 4.5rem;
    min-width: 28rem;
    max-width: 40rem;
    padding-left: 3rem;
    padding-right: 1rem;
    white-space: nowrap;
  }
  .c-btn a i {
    margin-left: 1.5rem;
  }
}
@media screen and (max-width: 767px) and (max-width: 360px) {
  .c-btn a {
    padding: 1.2rem 2rem 1.2rem 4rem;
    min-width: 20rem;
  }
}
.c-btn--blue a {
  color: #ffffff;
  position: relative;
  z-index: 10;
  border: 1px solid #0053A3;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.c-btn--blue a span {
  z-index: 11;
  display: inline-block;
  position: relative;
}
@media screen and (max-width: 767px) and (max-width: 400px) {
  .c-btn--blue a .news {
    font-size: 12px;
  }
}
.c-btn--blue a::before {
  content: "";
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #0053A3, #3D7BB7);
  opacity: 1;
  transition: 0.3s;
}
@media (hover: hover) {
  .c-btn--blue a:hover {
    color: #0053A3;
  }
  .c-btn--blue a:hover::before {
    opacity: 0;
  }
}
.c-btn--base a {
  color: #ffffff;
  background: #0053A3;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 600;
  border-radius: 3.2rem;
  position: relative;
  overflow: hidden;
  border: 1px solid #0053A3;
  position: relative;
  z-index: 1;
  transition: 0.3s;
}
.c-btn--base a span {
  display: inline-block;
  position: relative;
  z-index: 1;
}
@media (hover: hover) {
  .c-btn--base a:hover {
    color: #0053A3;
    background: transparent;
  }
}
.c-btn--base.small a {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.c-btn--white a {
  border: 1px solid transparent;
  color: #333333;
  background: #ffffff;
  transition: 0.3s;
  position: relative;
  z-index: 1;
}
.c-btn--white a i {
  color: #0053A3;
}
@media (hover: hover) {
  .c-btn--white a:hover {
    border: 1px solid #ffffff;
    color: #ffffff;
    background: #0053A3;
  }
  .c-btn--white a:hover i {
    color: #ffffff;
  }
}
@media (hover: hover) {
  .c-btn--white a.service:hover {
    background: transparent;
  }
}
.c-btn--white.recruit a {
  margin-bottom: 9.5rem;
}
@media screen and (max-width: 767px) {
  .c-btn--white.recruit a {
    margin-bottom: 5rem;
    width: calc(100% - 4rem);
  }
}
@media (hover: hover) {
  .c-btn--white.recruit a:hover {
    border: 1px solid #ffffff;
    background: transparent;
  }
}
.c-btn--orange a {
  background: linear-gradient(to right, #f57777, #f75555, #dd7b78);
  padding: 2.5rem 4.4rem 2.5rem 2rem;
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 0.15em;
  font-weight: 700;
  border-radius: 0.5rem;
  color: #ffffff;
}
.c-btn--orange a::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 2rem;
  width: 1.4rem;
  height: auto;
  aspect-ratio: 1;
  background: #ffffff;
  border-radius: 50%;
  transition: all 0.5s ease;
}
.c-btn--orange a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.6rem;
  width: 0.5rem;
  height: auto;
  aspect-ratio: 1;
  border-right: 1px solid #F88600;
  border-bottom: 1px solid #F88600;
  transform: translateY(-50%) rotate(-45deg);
  transition: all 0.5s ease;
}
@media screen and (max-width: 767px) {
  .c-btn--orange a {
    width: 100%;
    min-width: 20rem;
    padding: 2rem 2.7rem 2rem 1.5rem;
    font-size: 1.3rem;
    line-height: 1.5384615385;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .c-btn--orange a::before {
    right: 1rem;
    width: 1.5rem;
    height: 1.5rem;
  }
  .c-btn--orange a::after {
    right: 1.6rem;
    width: 0.5rem;
  }
}
@media (hover: hover) {
  .c-btn--orange a:hover::before {
    right: 1.3rem;
  }
  .c-btn--orange a:hover::after {
    right: 1.8rem;
  }
}
@media screen and (hover: hover) and (max-width: 767px) {
  .c-btn--orange a:hover::before {
    right: 0.3rem;
  }
  .c-btn--orange a:hover::after {
    right: 0.8rem;
  }
}

.c-card__item {
  position: relative;
  z-index: 2;
  display: block;
  padding-top: 5.2rem;
  padding-bottom: 6.5rem;
  background: #ffffff;
  text-align: center;
  position: relative;
  transition: 0.3s;
}
.c-card__item.option {
  padding: 4rem 0;
}
.c-card__item.shadow {
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
}
.c-card__item .c-card__item-text {
  font-size: 2.4rem;
  line-height: 1.25;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #0053A3;
  margin-bottom: 6rem;
}
@media screen and (max-width: 1350px) {
  .c-card__item .c-card__item-text.clerk {
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
.c-card__item .c-card__item-text.option {
  font-size: 1.7rem;
  line-height: 1.2352941176;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.c-card__item .c-card__item-text span {
  font-size: 1.8rem;
  line-height: 1.3888888889;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.c-card__item .c-card__item-text span.small {
  font-size: 2.4rem;
  line-height: 0.8333333333;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.c-card__item .c-card__item-text span.option-small {
  font-size: 1.6rem;
  line-height: 1.3125;
  letter-spacing: 0.1em;
  font-weight: 500;
}
@media screen and (min-width: 450px) {
  .c-card__item .c-card__item-text .br-option {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item {
    padding: 1.5rem 0;
    padding-left: 2.8rem;
    display: flex;
    justify-content: start;
    align-items: center;
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 767px) and (max-width: 360px) {
  .c-card__item {
    padding-left: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item:not(:last-of-type) {
    margin-bottom: 2.8rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item.option {
    padding: 2rem 3rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-text {
    margin-bottom: 0;
  }
  .c-card__item .c-card__item-text.option {
    text-align: left;
    font-size: 2.4rem;
    line-height: 1.25;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
  .c-card__item .c-card__item-text span.option-small {
    font-size: 1.8rem;
    line-height: 1.3888888889;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
.c-card__item .c-card__item-image {
  margin: auto;
  display: flex;
  align-items: center;
}
.c-card__item .c-card__item-image.top-service {
  width: 11rem;
  height: auto;
  aspect-ratio: 110/135;
}
.c-card__item .c-card__item-image.company {
  width: 8.3rem;
}
.c-card__item .c-card__item-image.philosophy {
  margin-top: 1rem;
  margin-bottom: 1rem;
  width: 13.2rem;
  padding-left: 2.5rem;
}
.c-card__item .c-card__item-image.access {
  width: 8.4rem;
}
.c-card__item .c-card__item-image.shake {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  width: 13rem;
}
.c-card__item .c-card__item-image.environment {
  margin-top: -2rem;
  width: 11.4rem;
}
.c-card__item .c-card__item-image.repair {
  margin-top: -2rem;
  padding-left: 1rem;
  width: 12rem;
}
.c-card__item .c-card__item-image.other {
  margin-top: -3rem;
  padding-left: 2rem;
  width: 13rem;
}
.c-card__item .c-card__item-image.clerk {
  margin-top: -4.5rem;
  width: 12.4rem;
}
.c-card__item .c-card__item-image.service {
  width: 10rem;
}
.c-card__item .c-card__item-image.ppp {
  margin-top: -2rem;
  width: 7rem;
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image {
    display: flex;
    align-items: center;
    margin: 0;
    margin-right: 4rem;
  }
}
@media screen and (max-width: 767px) and (max-width: 360px) {
  .c-card__item .c-card__item-image {
    margin-right: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.top-service {
    width: 6.2rem;
    height: auto;
    aspect-ratio: 62/80;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.company {
    width: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.philosophy {
    width: 8.5rem;
    padding-left: 1rem;
    margin-right: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.access {
    width: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.shake {
    margin-left: -1rem;
    width: 9rem;
    margin-right: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.environment {
    width: 7.2rem;
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.other {
    margin-top: 0rem;
    padding-left: 1rem;
    width: 7.5rem;
    margin-right: 3rem;
  }
}
@media screen and (max-width: 767px) and (max-width: 360px) {
  .c-card__item .c-card__item-image.other {
    margin-right: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.repair {
    margin-top: 1rem;
    margin-left: -1rem;
    padding-left: 2rem;
    width: 8.6rem;
    margin-right: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.clerk {
    margin-top: 0;
    margin-right: 3rem;
    width: 8.2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.service {
    width: 6rem;
    height: 7rem;
  }
}
@media screen and (max-width: 767px) {
  .c-card__item .c-card__item-image.ppp {
    margin-top: 0rem;
    width: 5rem;
    margin-left: 2rem;
    margin-right: 5rem;
  }
}
.c-card__item .c-card__item-image img {
  width: 100%;
  height: auto;
}
.c-card__item::after {
  content: "";
  position: absolute;
  bottom: 0.6rem;
  right: 0.6rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 30px 30px;
  border-color: transparent transparent #0053A3 transparent;
}
@media (hover: hover) {
  .c-card__item:hover {
    cursor: pointer;
    transform: translateY(6px);
  }
}

.c-top__section-title {
  font-family: "Rubik", sans-serif;
  text-align: center;
  font-size: 8rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  position: relative;
  z-index: 2;
}
.c-top__section-title.text-white {
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .c-top__section-title {
    display: none;
  }
}

.c-top__section-title-lead {
  text-align: center;
  font-size: 3rem;
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  position: relative;
  z-index: 2;
}
.c-top__section-title-lead.text-white {
  color: #ffffff;
}
.c-top__section-title-lead.text-black {
  color: #333333;
}
@media screen and (max-width: 767px) {
  .c-top__section-title-lead.text-black {
    color: #0053A3;
  }
}
@media screen and (max-width: 767px) {
  .c-top__section-title-lead {
    font-size: 3rem;
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .c-top__section-title-lead.text-small {
    font-size: 2.6rem;
    line-height: 1.1538461538;
    letter-spacing: 0.08em;
    font-weight: 700;
  }
}

/*----------------------------
    underPage main - title
-----------------------------*/
.c-under-title__wrapper {
  padding-top: 10.3rem;
  padding-bottom: 8.2rem;
  text-align: center;
  border-bottom: 1px solid #0053A3;
}
@media screen and (max-width: 767px) {
  .c-under-title__wrapper {
    padding-top: 4.8rem;
    padding-bottom: 3rem;
  }
}

.c-under-title__lead {
  font-family: "Rubik", sans-serif;
  font-size: 4rem;
  line-height: 1.175;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .c-under-title__lead {
    display: none;
  }
}

.c-under-title {
  font-size: 6rem;
  line-height: 1.7;
  letter-spacing: 0.2em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .c-under-title {
    font-size: 2.8rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .c-under-title.contact {
    font-size: 2.4rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

/*----------------------------
    underPage section - title
-----------------------------*/
.c-under-section-title__lead {
  text-align: center;
  font-family: "Rubik", sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 2rem;
}
.c-under-section-title__lead.text-white {
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .c-under-section-title__lead {
    display: none;
  }
}

.c-under-section-title {
  text-align: center;
  font-size: 4rem;
  line-height: 1;
  letter-spacing: 0.2em;
  font-weight: 700;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .c-under-section-title {
    font-size: 3rem;
    line-height: 1.3333333333;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
  .c-under-section-title.recruit-top {
    font-size: 2.6rem;
    line-height: 1.2307692308;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
}
.c-under-section-title .under-line {
  display: inline-block;
  position: relative;
}
.c-under-section-title .under-line::after {
  content: "";
  position: absolute;
  bottom: -3rem;
  left: 50%;
  transform: translateX(-50%);
  width: 7.3rem;
  height: 0.1rem;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .c-under-section-title .under-line::after {
    display: none;
  }
}
.c-under-section-title .under-line.under-line-white::after {
  background: #ffffff;
}
.c-under-section-title.text-white {
  color: #ffffff;
}

.c-breadcrumb {
  display: flex;
  align-items: center;
  margin-top: 1.2rem;
}
.c-breadcrumb i {
  right: 0.5rem;
  font-size: 1.6rem;
  color: #CCCCCC;
  margin: 0 0.4rem;
}
.c-breadcrumb span a {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.15em;
  font-weight: 600;
}
.c-breadcrumb span.top {
  color: #0053A3;
}
.c-breadcrumb span .current-item {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #333333;
}

.c-breadcrumb-manual {
  display: flex;
  align-items: center;
  margin-top: 1.2rem;
}
.c-breadcrumb-manual p {
  position: relative;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.15em;
  font-weight: 600;
}
.c-breadcrumb-manual p i {
  font-size: 1rem;
  line-height: 1.875;
  color: #CCCCCC;
  margin: 0 0.4rem;
}
.c-breadcrumb-manual .top {
  color: #0053A3;
}
.c-breadcrumb-manual .current {
  color: #333333;
}

.c-underPage__head-text {
  margin-top: 12rem;
  margin-bottom: 7.7rem;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.15em;
  font-weight: 400;
}
@media screen and (max-width: 1260px) {
  .c-underPage__head-text {
    font-size: 2.8rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .c-underPage__head-text {
    margin: 6rem 0;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.swiper-container {
  position: relative;
  margin-bottom: 6.8rem;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .swiper-container {
    margin-bottom: 5rem;
  }
}

.swiper {
  width: 100%;
}

.swiper-wrapper {
  width: 100%;
}

.swiper-slide {
  display: block;
  width: 100%;
  position: relative;
}
.swiper-slide .swiper-slide__tag {
  position: absolute;
  display: flex;
  flex-wrap: wrap-reverse;
  left: 2.7rem;
  bottom: 2rem;
}
.swiper-slide .swiper-slide__tag p {
  font-family: "Noto Sans JP", sans-serif;
  display: inline-block;
  font-size: 1.2rem;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #707070;
  background: #ffffff;
  padding: 0 1rem;
  border-radius: 2rem;
  margin-top: 0.5rem;
  margin-right: 1rem;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .swiper-slide {
    text-align: center;
  }
  .swiper-slide img {
    width: calc(100% - 3.6rem);
    height: auto;
    aspect-ratio: 320/180;
  }
  .swiper-slide img.recruit {
    width: 70%;
    height: auto;
    aspect-ratio: 212/331;
  }
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3.6rem;
  height: auto;
  aspect-ratio: 1;
  margin-top: 0;
  background: rgba(0, 84, 163, 0.6666666667);
  border-radius: 50%;
}
.swiper-button-prev::after,
.swiper-button-next::after {
  font-size: 1.2rem;
  color: #ffffff;
}
.swiper-button-prev.recruit,
.swiper-button-next.recruit {
  top: calc(50% - 4rem);
}

.swiper-button-prev {
  left: -1.8rem;
}
@media screen and (max-width: 767px) {
  .swiper-button-prev {
    left: 0;
  }
}

.swiper-button-next {
  right: -1.8rem;
}
@media screen and (max-width: 767px) {
  .swiper-button-next {
    right: 0;
  }
}

.p-page-mv__text-wrapper {
  position: absolute;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
  color: #ffffff;
}

.p-page-mv__title-lead {
  font-family: "Rubik", sans-serif;
  font-size: 4rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 1.4rem;
  text-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.17);
}
@media screen and (max-width: 767px) {
  .p-page-mv__title-lead {
    display: none;
  }
}

.p-page-mv__title {
  font-size: 6rem;
  line-height: 1;
  letter-spacing: 0.2em;
  font-weight: 700;
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .p-page-mv__title {
    font-size: 3rem;
    line-height: 1.7;
    letter-spacing: 0.2em;
    font-weight: 700;
    margin-bottom: 2.8rem;
  }
}

.p-page-mv__text-head {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 600;
  margin-bottom: 3.4rem;
}
@media screen and (max-width: 767px) {
  .p-page-mv__text-head {
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    font-weight: 600;
    margin-bottom: 0;
    text-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.759);
  }
}

.p-page-mv__text {
  font-size: 1.8rem;
  line-height: 1.7222222222;
  letter-spacing: 0.05em;
  font-weight: 600;
  text-shadow: 0 0 0.6rem rgba(0, 0, 0, 0.697);
}
@media screen and (max-width: 767px) {
  .p-page-mv__text {
    display: none;
  }
}

.p-page-mv__text--sp {
  margin-top: 2.8rem;
  margin-bottom: 5rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-page-mv__text--sp {
    display: none;
  }
}
.p-page-mv__text--sp.wakou {
  margin-top: 6rem;
}

.p-header-logo a {
  display: flex;
  align-items: center;
  width: 21rem;
  height: 4.5rem;
  transition: 0.3s;
}
.p-header-logo a img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-header-logo a {
    width: 15.6rem;
    height: 3.4rem;
  }
}
@media (hover: hover) {
  .p-header-logo a:hover {
    opacity: 0.7;
  }
}

.p-header-nav__list {
  display: flex;
  justify-content: end;
  align-items: center;
}

.p-header-nav__item {
  position: relative;
}
.p-header-nav__item .slide-bg {
  content: "";
  position: fixed;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  visibility: hidden;
}
.p-header-nav__item .slide-bg.js-open {
  visibility: visible;
}
.p-header-nav__item:first-child a {
  border-left: 1px solid #C0C0C0;
}
.p-header-nav__item .main-link {
  position: relative;
  z-index: 100;
  border-right: 1px solid #C0C0C0;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
  padding: 0.2rem 2.2rem;
  color: #3A3C3E;
  display: inline-block;
  position: relative;
}
@media (hover: hover) {
  .p-header-nav__item .main-link:hover {
    cursor: pointer;
  }
}
.p-header-nav__item .main-link .underline {
  display: inline-block;
  position: absolute;
  top: calc(100% - 2px);
  left: 50%;
  transform: translateX(-50%);
  padding-top: 2rem;
  width: 100%;
  padding-left: 2.2rem;
  padding-right: 2.2rem;
  border-bottom: 2px solid #0053A3;
  opacity: 0;
}
.p-header-nav__item .main-link .underline::after {
  position: absolute;
  display: inline-block;
  content: "";
  top: calc(100% - 1rem);
  left: 50%;
  transform: translateX(-50%);
  width: 150%;
  height: 5rem;
}
.p-header-nav__item .main-link.slide::before {
  content: "";
  position: absolute;
  padding-top: 1rem;
  top: calc(100% + 1.8rem);
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 15px 25px 15px;
  border-color: transparent transparent #0053A3 transparent;
  opacity: 0;
}
.p-header-nav__item .main-link.js-open .underline {
  opacity: 1;
}
.p-header-nav__item .main-link.js-open.slide::before {
  opacity: 1;
}

/*----------------------------------
    スライドメニュー
-----------------------------------*/
.p-header-nav__slide {
  background: #0053A3;
  padding: 4rem 5rem;
  position: fixed;
  top: 11rem;
  left: 50%;
  transform: translateX(-50%);
  width: 96rem;
  display: flex;
  justify-content: space-between;
  z-index: 100;
  visibility: hidden;
}
.p-header-nav__slide.js-open {
  visibility: visible;
}

.p-header-nav__slide-left {
  width: 25rem;
  padding-right: 3.5rem;
  border-right: 1px solid #ffffff;
}
.p-header-nav__slide-left .title {
  margin-top: 7rem;
  margin-bottom: 0.8rem;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #ffffff;
}
.p-header-nav__slide-left .title-lead {
  font-size: 2.2rem;
  line-height: 1.3636363636;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #ffffff;
}

.p-btn-slideMenu {
  margin-top: 10.3rem;
  width: 100%;
}
.p-btn-slideMenu a {
  min-width: 22rem;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.15em;
  font-weight: 700;
  padding: 1.2rem 1.2rem 1.2rem 3.5rem;
  transition: 0s;
}

.p-header-nav__slide-right {
  padding-left: 5rem;
  width: 71rem;
}
.p-header-nav__slide-right .wrapper {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3rem;
}
.p-header-nav__slide-right .item {
  display: block;
  width: 30%;
}
.p-header-nav__slide-right .item img {
  width: 100%;
  height: auto;
  aspect-ratio: 160/90;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (hover: hover) {
  .p-header-nav__slide-right .item:hover .list::before {
    background: #0053A3;
  }
  .p-header-nav__slide-right .item:hover .list::after {
    border-right: 1.5px solid #ffffff;
    border-bottom: 1.5px solid #ffffff;
  }
}
.p-header-nav__slide-right .list {
  display: inline-block;
  padding-left: 2.5rem;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.6875;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #ffffff;
}
.p-header-nav__slide-right .list.mb {
  margin-bottom: 2rem;
}
.p-header-nav__slide-right .list::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1.6rem;
  height: 1.6rem;
  background: #ffffff;
  border-radius: 50%;
  border: 1px solid #ffffff;
}
.p-header-nav__slide-right .list::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  left: 0.3rem;
  width: 0.7rem;
  height: 0.7rem;
  border-right: 1.5px solid #0053A3;
  border-bottom: 1.5px solid #0053A3;
}
@media (hover: hover) {
  .p-header-nav__slide-right .list:hover::before {
    background: #0053A3;
  }
  .p-header-nav__slide-right .list:hover::after {
    border-right: 1.5px solid #ffffff;
    border-bottom: 1.5px solid #ffffff;
  }
}
.p-header-nav__slide-right .text {
  font-size: 1rem;
  line-height: 1.3;
  letter-spacing: 0.15em;
  font-weight: 400;
  color: #ffffff;
}

.p-header-btn a {
	/*   padding: 0.7rem 6rem 0.7rem 5rem; */
	padding: 0.7rem 4rem 0.7rem 1.8rem;
	margin-left: 2rem;
/* 	background: linear-gradient(to right, #f94444, #fea2a2, #fe5852); */
	background-color: #f94444;
	border-radius: 5px;
	font-size: 1.5rem;
	line-height: 1.7333333333;
	letter-spacing: 0.07em;
	font-weight: 700;
	color: #ffffff;
	transition: all 0.3s ease;
	position: relative;
	min-width: auto;
}
.p-header-btn a::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 2rem;
  width: 1.4rem;
  height: auto;
  aspect-ratio: 1;
  background: #ffffff;
  border-radius: 50%;
  transition: all 0.5s ease;
}
.p-header-btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.6rem;
  width: 0.5rem;
  height: auto;
  aspect-ratio: 1;
  border-right: 1px solid #F88600;
  border-bottom: 1px solid #F88600;
  transform: translateY(-50%) rotate(-45deg);
  transition: all 0.5s ease;
}
@media (hover: hover) {
  .p-header-btn a:hover::before {
    right: 1.3rem;
  }
  .p-header-btn a:hover::after {
    right: 1.8rem;
  }
}

.p-drawer__icon {
  width: 2.5rem;
}

.p-drawer__icon-bar {
  width: 2.5rem;
  height: 1.5px;
  background: #0053A3;
  transition: 0.3s;
}
.p-drawer__icon-bar:not(:last-child) {
  margin-bottom: 0.8rem;
}
.p-drawer__icon-bar.js-open.bar1 {
  transform: translateY(0.4rem) rotate(45deg);
}
.p-drawer__icon-bar.js-open.bar2 {
  display: none;
}
.p-drawer__icon-bar.js-open.bar3 {
  transform: translateY(-0.5rem) rotate(-45deg);
}

.p-drawer-menu {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 99;
  background: #ffffff;
  overflow-y: scroll;
}

.p-drawer-menu__contents {
  padding-top: 6rem;
  padding-bottom: 4rem;
  overflow-x: scroll;
}

.p-drawer-nav__list {
  width: 100%;
  display: block;
  margin-top: 3.8rem;
  margin-bottom: 5.4rem;
}

.p-drawer-nav__item {
  transition: 0.3s;
}
@media (hover: hover) {
  .p-drawer-nav__item:hover {
    opacity: 0.7;
  }
}
.p-drawer-nav__item.head {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  padding-left: 2rem;
  margin-bottom: 1rem;
  position: relative;
}
.p-drawer-nav__item.head::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.7rem;
  height: 0.7rem;
  border-right: 0.2rem solid #0053A3;
  border-bottom: 0.2rem solid #0053A3;
  transform: translateY(-50%) rotate(-45deg);
}
.p-drawer-nav__item.head.contact::before {
  top: 1.3rem;
}
.p-drawer-nav__item.under {
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 400;
  padding-left: 1.4rem;
  margin-left: 0.2rem;
  margin-bottom: 1rem;
  position: relative;
}
.p-drawer-nav__item.under::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  border-right: 0.1rem solid #333333;
  border-bottom: 0.1rem solid #333333;
  transform: translateY(-50%) rotate(-45deg);
}
.p-drawer-nav__item.under.link {
  position: relative;
}
.p-drawer-nav__item.under.link::after {
  content: "";
  position: absolute;
  top: 0.5rem;
  right: -1rem;
  width: 0.8rem;
  height: 0.8rem;
  background-image: url(../img/icon/link-paste-icon.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .p-drawer-nav__item.under.link::after {
    right: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .p-drawer-nav__item.under {
    display: inline-block;
    padding-right: 2.5rem;
  }
  .p-drawer-nav__item.under.sp-none {
    display: none;
  }
  .p-drawer-nav__item.under.pr-none {
    padding-right: 0;
  }
  .p-drawer-nav__item.under.pr-sp {
    padding-right: 1rem;
  }
}
.p-drawer-nav__item.under-sub {
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-left: 1.5rem;
  margin-bottom: 1.3rem;
  padding-left: 1.4rem;
  position: relative;
}
.p-drawer-nav__item.under-sub::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: #333333;
  transform: translateY(-50%);
}
.p-drawer-nav__item.mb-sp {
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .p-drawer-banner__list {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.8rem;
    margin-top: 5rem;
    margin-bottom: 3.3rem;
  }
}

.p-drawer-banner__item {
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-drawer-banner__item {
    width: 100%;
    margin: 0 auto;
  }
}
@media (hover: hover) {
  .p-drawer-banner__item:hover {
    opacity: 0.7;
  }
}

.p-top-mv__img {
  margin-left: 3rem;
  width: 95.1rem;
  height: auto;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__img {
    margin-left: 1.7857vw;
    width: 50.6vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__img {
    width: 90%;
  }
}
.p-top-mv__img .mv {
  width: 100%;
}
.p-top-mv__img .icon1, .p-top-mv__img .icon2, .p-top-mv__img .icon3 {
  position: absolute;
  opacity: 0;
}
@keyframes slideIn {
  0% {
    opacity: 0;
    transform: translateY(-10rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideIn2 {
  0% {
    opacity: 0;
    transform: translateY(calc(-50% - 10rem));
  }
  100% {
    opacity: 1;
    transform: translateY(-50%);
  }
}
.p-top-mv__img .icon1 {
  animation-name: slideIn;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  bottom: 10rem;
  left: 12rem;
  width: 44.1rem;
  height: auto;
  aspect-ratio: 441/370;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__img .icon1 {
    width: 23.25vw;
    left: 7.14vw;
    bottom: 5.952vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__img .icon1 {
    bottom: 9.126vw;
    left: 13.04vw;
    width: 38.5vw;
    height: auto;
    aspect-ratio: 441/370;
  }
}
.p-top-mv__img .icon2 {
  animation-name: slideIn2;
  animation-duration: 1s;
  animation-delay: 0.5s; /*6で解説*/
  animation-fill-mode: forwards;
  top: calc(50% - 7rem);
  transform: translateY(-50%);
  right: 5rem;
  width: 47.2rem;
  height: auto;
  aspect-ratio: 472/470;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__img .icon2 {
    width: 24.09vw;
    right: 2.97vw;
    top: calc(50% - 4.1vw);
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__img .icon2 {
    top: calc(50% - 7vw);
    transform: translateY(-50%);
    right: 6.59vw;
    width: 40.29vw;
    height: auto;
    aspect-ratio: 472/470;
  }
}
.p-top-mv__img .icon3 {
  animation-name: slideIn;
  animation-duration: 1s;
  animation-delay: 1s; /*6で解説*/
  animation-fill-mode: forwards;
  top: 0rem;
  left: 6rem;
  width: 36rem;
  height: auto;
  aspect-ratio: 360/405;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__img .icon3 {
    width: 18.42vw;
    left: 3.57vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__img .icon3 {
    top: 0rem;
    left: 7.822vw;
    width: 32.29vw;
    height: auto;
    aspect-ratio: 360/405;
  }
}

.p-top-mv__text-wrapper {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3rem;
  text-align: center;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__text-wrapper {
    right: 1.7857vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__text-wrapper {
    text-align: center;
    position: relative;
    top: 0;
    transform: translateY(0);
  }
}

.p-top-mv__title {
  margin-bottom: 6rem;
}
.p-top-mv__title span {
  font-size: 7rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  opacity: 0;
}
.p-top-mv__title .color {
  display: inline-block;
  font-size: 8rem;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-top-mv__title .color.text-blue {
  color: #0053A3;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__title {
    margin-bottom: 3.2vw;
  }
  .p-top-mv__title span {
    font-size: 4.166vw;
  }
  .p-top-mv__title .color {
    font-size: 4.762vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__title {
    margin-bottom: 4rem;
  }
  .p-top-mv__title span {
    font-size: 3.3rem;
    line-height: 1.7272727273;
    letter-spacing: 0.08em;
    font-weight: 700;
  }
  .p-top-mv__title .color {
    font-size: 3.8rem;
    line-height: 1.7105263158;
    letter-spacing: 0.08em;
    font-weight: 700;
  }
}

.p-top-mv__text {
  display: block;
}
.p-top-mv__text:first-of-type {
  margin-bottom: 4.5rem;
}
.p-top-mv__text span {
  opacity: 0;
  font-size: 2.4rem;
  line-height: 2.0833333333;
  letter-spacing: 0em;
  font-weight: 600;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__text span {
    font-size: 1.4285vw;
  }
  .p-top-mv__text:first-of-type {
    margin-bottom: 2.678vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__text span {
    font-size: 1.4rem;
    line-height: 1.9285714286;
    letter-spacing: 0em;
    font-weight: 600;
  }
  .p-top-mv__text:first-of-type {
    margin-bottom: 3.4rem;
  }
  .p-top-mv__text:last-of-type {
    margin-bottom: 5.5rem;
  }
}

@keyframes fade {
  0% {
    opacity: 0;
    transform: translateY(-4rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.p-top-mv__news-wrapper {
  animation-name: fade;
  animation-fill-mode: forwards;
  animation-duration: 2s;
  animation-delay: 3.5s;
  opacity: 0;
  position: absolute;
  z-index: 2;
  bottom: -4rem;
  right: 7.5rem;
  background: #0053A3;
  color: #ffffff;
  display: flex;
  align-items: center;
  padding: 2rem 3.5rem 2rem 4.5rem;
  border-radius: 0.5rem;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__news-wrapper {
    bottom: -2.38vw;
    right: 1.7857vw;
    padding: 1.19vw 1.8vw 1.19vw 2.078vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__news-wrapper {
    width: calc(100% - 40px);
    margin-top: -17.5rem;
    margin-left: 2rem;
    margin-right: 2rem;
    height: inherit;
    position: relative;
    transform: translateX(0);
    bottom: -17.5rem;
    right: 0;
    display: block;
    padding: 2.7rem 2rem 3rem;
  }
}

.p-top-mv__news-title {
  font-size: 1.8rem;
  line-height: 1.1111111111;
  letter-spacing: 0.1em;
  font-weight: 700;
  padding-right: 45px;
  position: relative;
}
.p-top-mv__news-title::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 1px;
  height: 240%;
  background: #ffffff;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__news-title {
    font-size: 1.07vw;
    padding-right: 1rem;
  }
  .p-top-mv__news-title::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    width: 1px;
    height: 240%;
    background: #ffffff;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__news-title {
    font-size: 1.8rem;
    line-height: 1.7222222222;
    letter-spacing: 0.1em;
    font-weight: 700;
    padding-right: 0;
    padding-bottom: 2.2rem;
    border-bottom: 1px solid #ffffff;
    text-align: center;
  }
  .p-top-mv__news-title::after {
    display: none;
  }
}

.p-top-mv__news-text {
  display: flex;
  align-items: center;
  padding: 1rem 0;
  margin-right: 2.5rem;
}
.p-top-mv__news-text time {
  margin-right: 0.5rem;
  font-size: 1.6rem;
  line-height: 1.25;
  letter-spacing: 0.1em;
  font-weight: 700;
}
.p-top-mv__news-text p {
  width: 51.2rem;
  font-size: 1.6rem;
  line-height: 1.25;
  letter-spacing: 0.1em;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__news-text {
    margin-right: 1rem;
  }
  .p-top-mv__news-text time, .p-top-mv__news-text p {
    font-size: 0.95vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__news-text {
    display: block;
    margin-right: 0;
  }
  .p-top-mv__news-text time {
    margin-right: 0;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
  .p-top-mv__news-text p {
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 2.6rem;
  }
}

.p-top-mv__news-time {
  padding-left: 4.5rem;
  padding-right: 2.3rem;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 1680px) {
  .p-top-mv__news-time {
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.7142vw;
  }
}
@media screen and (max-width: 767px) {
  .p-top-mv__news-time {
    padding-left: 0;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 1.7rem;
  }
}

.p-top-mv__news-btn a {
  display: inline-block;
  padding: 1rem 1.6rem;
  border-radius: 0.5rem;
  font-size: 1.6rem;
  line-height: 1.4375;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #0053A3;
  border: 1px solid #ffffff;
  background: #ffffff;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-top-mv__news-btn a:hover {
    background: transparent;
    color: #ffffff;
  }
}
@media screen and (max-width: 1680px) {
  .p-top-mv__news-btn a {
    padding: 0.5rem 1rem;
    font-size: 0.95vw;
  }
}

@media screen and (max-width: 767px) {
  .p-top-mv__news-btn {
    text-align: center;
  }
  .p-top-mv__news-btn a {
    padding: 1.4rem 2rem;
    font-size: 1.5rem;
    line-height: 1.7333333333;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}

.p-top-about__wrapper {
  position: relative;
}
.p-top-about__wrapper.service-top {
  margin-top: 12rem;
}
@media screen and (max-width: 767px) {
  .p-top-about__wrapper.service-top {
    margin-top: 4.5rem;
  }
}

.p-top-about__title {
  font-size: 6rem;
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 6.8rem;
}
@media screen and (max-width: 767px) {
  .p-top-about__title {
    margin-top: 4rem;
    margin-bottom: 3.6rem;
    font-size: 2.7rem;
    line-height: 1.7037037037;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

.p-top-about__text {
  width: 43.3333333333%;
  font-size: 1.8rem;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 6.8rem;
}
@media screen and (max-width: 767px) {
  .p-top-about__text {
    width: 100%;
    font-size: 1.4rem;
    line-height: 2.1428571429;
    letter-spacing: 0em;
    font-weight: 400;
    margin-bottom: 5rem;
  }
}

.p-top-about__image {
  position: absolute;
  z-index: -1;
  top: calc(50% + 20px);
  transform: translateY(-50%);
  right: 0;
}
.p-top-about__image.service-top {
  top: calc(50% + 8rem);
}
@media screen and (max-width: 767px) {
  .p-top-about__image.service-top {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 1400px) {
  .p-top-about__image {
    top: 50%;
    right: calc((100vw - 1400px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .p-top-about__image {
    position: relative;
    top: 0;
    transform: translateY(0);
    left: 0;
  }
}

.p-top-about__image img {
  width: 53.6vw;
  max-width: 96rem;
  position: relative;
}
@media screen and (min-width: 1400px) {
  .p-top-about__image img {
    width: 75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-top-about__image img {
    width: 100%;
    height: auto;
    aspect-ratio: 390/232;
  }
}

.p-top-about__icon img {
  width: 22.5vw;
  max-width: 35rem;
  height: auto;
  aspect-ratio: 400/361;
  position: absolute;
  top: -8rem;
  right: 10rem;
}
@media screen and (max-width: 767px) {
  .p-top-about__icon img {
    position: relative;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 73.4%;
    height: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-about__icon {
    margin-top: -10rem;
  }
}

.p-top-service__bg {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  width: 38.95vw;
  height: 31.61vw;
}
@media screen and (max-width: 767px) {
  .p-top-service__bg {
    z-index: 0;
    width: 50%;
    height: auto;
    aspect-ratio: 202/164;
  }
}

.p-top-service__illustration {
  position: absolute;
  z-index: 2;
  top: -14rem;
  right: 2rem;
  width: 19.75vw;
  max-width: 28.6rem;
}
.p-top-service__illustration img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-top-service__illustration {
    display: none;
  }
}

.p-top-service__text {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #ffffff;
  margin-top: 4.3rem;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .p-top-service__text {
    font-size: 1.5rem;
    line-height: 1.8666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
    text-align: left;
    margin-top: 2.8rem;
    margin-bottom: 4.5rem;
  }
}

.p-top-service__contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .p-top-service__contents {
    display: block;
    margin-bottom: 2.6rem;
  }
  .p-top-service__contents.page-recruit {
    margin-bottom: 0;
  }
}

.p-top-service__other-item {
  display: inline-block;
  padding: 3rem 7rem 3rem 4rem;
  margin-bottom: 6.8rem;
  background: #ffffff;
  position: relative;
  transition: 0.3s;
}
.p-top-service__other-item::after {
  content: "";
  position: absolute;
  bottom: 0.6rem;
  right: 0.6rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 30px 30px;
  border-color: transparent transparent #0053A3 transparent;
}
.p-top-service__other-item .head {
  display: inline-block;
  font-size: 2.2rem;
  line-height: 1.3636363636;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: #0053A3;
  margin-right: 3rem;
}
.p-top-service__other-item .text {
  display: inline-block;
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.15em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-top-service__other-item {
    width: 100%;
    padding: 2rem 1.7rem;
    text-align: left;
    margin-bottom: 5rem;
  }
  .p-top-service__other-item .head {
    display: block;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 500;
    margin-right: 0;
    margin-bottom: 1.6rem;
  }
  .p-top-service__other-item .text {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1.25;
    letter-spacing: 0.15em;
    font-weight: 400;
  }
}
@media (hover: hover) {
  .p-top-service__other-item:hover {
    transform: translateY(6px);
  }
}

.p-top-management__contents {
  margin-top: -14rem;
  margin-bottom: 12rem;
  background: #E8EEF3;
  box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.16);
  padding: 7rem 5rem 6.8rem;
}
@media screen and (max-width: 767px) {
  .p-top-management__contents {
    margin-top: 0;
    width: calc(100% + 4rem);
    margin-left: -2rem;
    padding: 12.8vw 2rem;
    margin-bottom: 0;
  }
}

.p-top-management__title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-top-management__title {
    text-align: center;
    font-size: 3rem;
    line-height: 1;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 3rem;
  }
}

.p-top-management__text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-top-management__text {
    font-size: 1.5rem;
    line-height: 1.8666666667;
    letter-spacing: 0.1em;
    font-weight: 0;
    margin-bottom: 5.6rem;
  }
}

.p-top-management__dummy {
  width: 32rem;
  height: 18rem;
}

.p-top-contact__text {
  text-align: center;
  margin-top: 4.3rem;
  margin-bottom: 8.1rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #ffffff;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-top-contact__text {
    margin-top: 2.8rem;
    margin-bottom: 5rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
    text-align: left;
  }
}

.p-top-contact__wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 8rem;
       column-gap: 8rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-top-contact__wrapper {
    display: block;
  }
}

.p-top-contact__item {
  padding-top: 7rem;
  padding-bottom: 5.3rem;
  border-radius: 1rem;
  text-align: center;
}
.p-top-contact__item.bg-white {
  background: #ffffff;
}
.p-top-contact__item.bg-thinBlue {
  background: #E8EEF3;
}
.p-top-contact__item .p-contact__email-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 3.7rem;
}
.p-top-contact__item .p-contact__email-wrap img {
  width: 3rem;
}
.p-top-contact__item .p-contact__email-wrap .dot img {
  margin: 0 1.4rem;
}
@media screen and (max-width: 767px) {
  .p-top-contact__item {
    padding: 3.3rem 2rem 2rem 2rem;
  }
  .p-top-contact__item:first-of-type {
    margin-bottom: 2.8rem;
  }
  .p-top-contact__item .p-contact__email-wrap {
    margin-bottom: 2.5rem;
  }
}

.p-top-contact__item-title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 3.4rem;
}
@media screen and (max-width: 767px) {
  .p-top-contact__item-title {
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
}

.p-top-contact__tell-bubble {
  display: inline-block;
  padding: 0.4rem 1rem 4rem 3rem;
  position: relative;
}
.p-top-contact__tell-bubble span {
  display: inline-block;
  position: relative;
  z-index: 1;
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-top-contact__tell-bubble {
    padding: 0.4rem 1.2rem 3rem 2rem;
  }
  .p-top-contact__tell-bubble span {
    margin-top: 0;
    font-size: 1.1rem;
    line-height: 0.9090909091;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-top-contact__tell-bubble::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 30%;
  transform: translateY(-50%);
  left: -1.4rem;
  width: 2.8rem;
  height: 2.8rem;
  background-image: url(../img/icon/tell-icon.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
  .p-top-contact__tell-bubble::before {
    width: 4rem;
    height: 4rem;
    top: 0;
    bottom: -4rem;
    transform: translateY(0);
    left: -3rem;
  }
}
.p-top-contact__tell-bubble::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -1.2rem;
  left: 50%;
  transform: translateX(-50%);
  width: 110%;
  height: 130%;
  background-image: url(../img/icon/speechBubble-icon.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
  .p-top-contact__tell-bubble::after {
    top: -0.6rem;
    width: 110%;
    height: 120%;
  }
}

.p-top-contact__tell-number {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: -1rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.p-top-contact__tell-number .freeDial img {
  margin-top: 1.2rem;
  width: 4.8rem;
  height: 3.1rem;
}
.p-top-contact__tell-number a {
  font-family: "Arial", "Noto Sans JP", sans-serif;
  font-size: 4rem;
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .p-top-contact__tell-number {
    margin-top: -2rem;
  }
  .p-top-contact__tell-number .freeDial img {
    width: 3.6rem;
  }
  .p-top-contact__tell-number a {
    font-size: 2.9rem;
    line-height: 1.1379310345;
    letter-spacing: 0em;
    font-weight: 700;
  }
}

.p-top-contact__item-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #707070;
}

.p-top-recruit__wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 4.5rem;
  margin-bottom: 12rem;
}
.p-top-recruit__wrapper.page-recruit {
  margin-top: 12rem;
  margin-bottom: 0;
  align-items: start;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__wrapper.page-recruit {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-top-recruit__wrapper {
    display: block;
    margin-top: 2.5rem;
    margin-bottom: 5rem;
  }
}

/*----------------------------
    left - contents 
-----------------------------*/
.p-top-recruit__text-contents {
  width: 38%;
}
.p-top-recruit__text-contents .text-question {
  white-space: nowrap;
  font-size: 2.8rem;
  line-height: 1.5714285714;
  letter-spacing: 0.15em;
  font-weight: 500;
  margin-bottom: 11.3rem;
  position: relative;
}
.p-top-recruit__text-contents .text-question::after {
  content: "";
  position: absolute;
  bottom: -5.6rem;
  left: 0;
  width: 7.3rem;
  height: 1px;
  background: #0053A3;
}
.p-top-recruit__text-contents .text-question.border-color-white::after {
  background: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__text-contents .text-question {
    text-align: left;
    font-size: 2.4rem;
    line-height: 1.3333333333;
    letter-spacing: 0.15em;
    font-weight: 500;
    white-space: normal;
  }
}
.p-top-recruit__text-contents .text-interview {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 3.4rem;
}
.p-top-recruit__text-contents .text-interview.text-white {
  color: #ffffff;
  margin-bottom: 2rem;
}
.p-top-recruit__text-contents .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 500;
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__text-contents {
    width: 100%;
  }
  .p-top-recruit__text-contents .text-question {
    text-align: center;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-weight: 500;
    margin-bottom: 8.2rem;
  }
  .p-top-recruit__text-contents .text-question::after {
    left: 50%;
    transform: translateX(-50%);
    bottom: -4rem;
  }
  .p-top-recruit__text-contents .text-interview {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.9166666667;
    letter-spacing: 0.15em;
    font-weight: 600;
    margin-bottom: 2.8rem;
  }
  .p-top-recruit__text-contents .text {
    font-size: 1.5rem;
    line-height: 1.8666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
    text-align: left;
    margin-bottom: 5rem;
  }
}

/*----------------------------
    right - contents 
-----------------------------*/
.p-top-recruit__image-contents {
  width: 100%;
  text-align: right;
}

.p-top-recruit__image-item {
	display: inline-block;
	text-align: center;
	position: relative
}
.p-top-recruit__image-item:not(:last-child) {
  margin-right: 1.5rem;
}
.p-top-recruit__image-item img {
  width: 20rem;
  margin-bottom: 2.2rem;
}
.p-top-recruit__image-item p {
  text-align: left;
  padding-left: 4rem;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 700;
  position: relative;
}
.p-top-recruit__image-item p::before {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: 1.5rem;
  width: 1.4rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid #0053A3;
  transition: 0.3s;
}
.p-top-recruit__image-item .new {
	position: absolute;
	z-index: 50;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 0;
	left: 0;
	color: #fff;
	background-color: #FA5050;
	width: 5.5rem;
	height: 5.5rem;
	font-size: 1.3rem;
	font-weight: 800;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__image-item p::before {
    display: none;
  }
}
.p-top-recruit__image-item p::after {
  content: "";
  position: absolute;
  top: 0.85rem;
  left: 1.85rem;
  width: 0.5rem;
  height: auto;
  aspect-ratio: 1;
  border-right: 1px solid #0053A3;
  border-bottom: 1px solid #0053A3;
  transform: rotate(-45deg);
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__image-item p::after {
    display: none;
  }
}
.p-top-recruit__image-item p.btn-white::before {
  background: #ffffff;
  border-color: #ffffff;
}
@media screen and (max-width: 767px) {
	.p-top-recruit__image-item p {
		text-align: center;
	}
	.p-top-recruit__image-item p span {
		display: inline-block;
		-moz-text-align-last: left;
		text-align-last: left;
		position: relative;
	}
	.p-top-recruit__image-item p span::before {
		content: "";
		position: absolute;
		top: 0.4rem;
		left: -2rem;
		width: 1.4rem;
		height: auto;
		aspect-ratio: 1;
		border-radius: 50%;
		border: 1px solid #0053A3;
		transition: 0.3s;
	}
	.p-top-recruit__image-item p span::after {
		content: "";
		position: absolute;
		top: 0.85rem;
		left: -1.7rem;
		width: 0.5rem;
		height: auto;
		aspect-ratio: 1;
		border-right: 1px solid #0053A3;
		border-bottom: 1px solid #0053A3;
		transform: rotate(-45deg);
		transition: 0.3s;
	}
	.p-top-recruit__image-item .new {
		left: 6rem;
	}
}
@media (hover: hover) {
  .p-top-recruit__image-item:hover p:before {
    background: #0053A3;
    left: 1.8rem;
  }
  .p-top-recruit__image-item:hover p:after {
    border-color: #ffffff;
    left: 2.15rem;
  }
}
@media screen and (hover: hover) and (max-width: 767px) {
  .p-top-recruit__image-item:hover p span::before {
    background: #0053A3;
    left: -1.8rem;
  }
  .p-top-recruit__image-item:hover p span::after {
    border-color: #ffffff;
    left: -1.5rem;
  }
}

/*----------------------------
    enjoy - contents
-----------------------------*/
.p-top-recruit__enjoy-wrapper {
  background-image: url(../img/top/top-recruit-enjoy-bg.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 9rem;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__enjoy-wrapper {
    width: calc(100% + 4rem);
    margin-left: -2rem;
    background-image: url(../img/top/top-recruit-enjoy-bg-sp.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    display: block;
    margin-bottom: 5rem;
  }
}

.p-top-recruit__enjoy-text-contents {
  width: 50%;
  padding-left: 5rem;
  color: #ffffff;
}
.p-top-recruit__enjoy-text-contents .head {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-top: 6rem;
  margin-bottom: 3.4rem;
}
.p-top-recruit__enjoy-text-contents .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  padding-right: 8rem;
  margin-bottom: 4.6rem;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__enjoy-text-contents {
    width: 100%;
    padding-left: 0;
  }
  .p-top-recruit__enjoy-text-contents .head {
    font-size: 3rem;
    line-height: 1.4;
    letter-spacing: 0.15em;
    font-weight: 700;
    padding-left: 2rem;
    padding-top: 5rem;
    margin-bottom: 2.8rem;
  }
  .p-top-recruit__enjoy-text-contents .text {
    padding-left: 2rem;
    font-size: 1.6rem;
    line-height: 1.875;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 2.8rem;
  }
}

.p-top-recruit__enjoy-img-contents {
  width: 50%;
}
.p-top-recruit__enjoy-img-contents img {
  width: calc(100% - 1.8rem);
  height: calc(100% - 1.7rem);
}
@media screen and (max-width: 767px) {
  .p-top-recruit__enjoy-img-contents {
    width: 100%;
    text-align: center;
    margin-bottom: 5rem;
  }
  .p-top-recruit__enjoy-img-contents img {
    width: calc(100% - 4rem);
  }
}

/*----------------------------
    link
-----------------------------*/
.p-top-recruit__link {
  text-align: center;
}
.p-top-recruit__link a {
  display: inline-block;
  padding: 1.8rem 12.8rem;
  border: 1px solid #333333;
  border-radius: 0.5rem;
  box-shadow: 0 3px 6px #d0d0d0;
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 0.15em;
  font-weight: 700;
  position: relative;
  transition: 0.3s;
}
.p-top-recruit__link a::after {
  content: "";
  position: absolute;
  top: 2.4rem;
  right: 11rem;
  width: 1.3rem;
  height: auto;
  aspect-ratio: 1;
  background-image: url(../img/icon/link-paste-icon.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .p-top-recruit__link a {
    width: 100%;
    max-width: 40rem;
    margin: auto;
    padding: 2.3rem 1rem;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
  .p-top-recruit__link a::after {
    display: none;
  }
  .p-top-recruit__link a span {
    display: inline;
    position: relative;
  }
  .p-top-recruit__link a span::after {
    content: "";
    position: absolute;
    top: 2.4rem;
    width: 1.3rem;
    height: auto;
    aspect-ratio: 1;
    background-image: url(../img/icon/link-paste-icon.svg);
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@media (hover: hover) {
  .p-top-recruit__link a:hover {
    transform: translateY(4px);
  }
}

.p-top-corporate__text-head {
  margin-top: 4.5rem;
  margin-bottom: 4.7rem;
  font-size: 2.8rem;
  line-height: 1.5714285714;
  letter-spacing: 0.15em;
  font-weight: 600;
  color: #ffffff;
  position: relative;
  z-index: 2;
}

.p-top-corporate__text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 8rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-top-corporate__text {
    font-size: 1.5rem;
    line-height: 1.8666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-top: 3rem;
    margin-bottom: 4.6rem;
  }
}

.p-top-corporate__contents {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -moz-column-gap: 2.7rem;
       column-gap: 2.7rem;
  margin-bottom: 6.8rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-top-corporate__contents {
    display: block;
    margin-bottom: 5rem;
  }
}

/*----------------------------
    SDGs
-----------------------------*/
.p-top-corporate__sdgs-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: start;
  padding: 2.6rem 4.2rem 4.5rem 5rem;
  position: relative;
  z-index: 1;
}
.p-top-corporate__sdgs-wrapper::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/top/sdgs-bg.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
  .p-top-corporate__sdgs-wrapper::after {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .p-top-corporate__sdgs-wrapper {
    display: block;
    background: #ffffff;
    border: 2px solid #0034A1;
    padding: 0rem 2rem 4.5rem;
  }
}

.p-top-corporate__sdgs-text-contents {
  width: 47.1rem;
  position: relative;
  z-index: 1;
}
.p-top-corporate__sdgs-text-contents h3 {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-top: 4.4rem;
  margin-bottom: 4rem;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-top-corporate__sdgs-text-contents h3 {
    margin-top: 4rem;
    margin-bottom: 2.4rem;
  }
}
.p-top-corporate__sdgs-text-contents p {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 6.8rem;
}
@media screen and (max-width: 767px) {
  .p-top-corporate__sdgs-text-contents {
    width: 100%;
  }
  .p-top-corporate__sdgs-text-contents h3 {
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.0714285714;
    letter-spacing: 0.08em;
    font-weight: 700;
    margin-bottom: 2.4rem;
  }
}
@media screen and (max-width: 767px) and (max-width: 370px) {
  .p-top-corporate__sdgs-text-contents h3 {
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-top-corporate__sdgs-text-contents p {
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 600;
    margin-bottom: 1rem;
  }
}

.p-top-corporate__sdgs-img-contents {
  width: 58rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-top-corporate__sdgs-img-contents {
    width: 100%;
  }
}

.p-top-information__wrapper {
  display: flex;
  justify-content: space-between;
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .p-top-information__wrapper {
    display: block;
    margin-top: 4rem;
    margin-bottom: 5rem;
  }
}

.p-top-information__left-contents {
  width: 24rem;
}
@media screen and (max-width: 767px) {
  .p-top-information__left-contents {
    width: 100%;
  }
}

.p-top-information__right-contents {
  width: 88rem;
}
@media screen and (max-width: 767px) {
  .p-top-information__right-contents {
    width: 100%;
  }
}

/*----------------------------
    Left
-----------------------------*/
.p-top-information__category-item {
  display: inline-block;
  text-align: center;
  width: 100%;
  padding: 1.3rem 2rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 700;
  border: 1px solid #0053A3;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-top-information__category-item:hover {
    cursor: pointer;
    background: #0053A3;
    color: #ffffff;
  }
}
.p-top-information__category-item:not(:last-child) {
  margin-bottom: 2.6rem;
}
.p-top-information__category-item:last-child {
  margin-bottom: 11rem;
}
.p-top-information__category-item.current {
  background: #0053A3;
  color: #ffffff;
  pointer-events: none;
}

/*----------------------------
    Right
-----------------------------*/
.p-top-information__item {
  display: block;
  padding: 2rem 3rem;
  border-bottom: 1px solid #CCCCCC;
}
@media screen and (max-width: 850px) {
  .p-top-information__item {
    padding: 2rem 1.5rem;
  }
}
.p-top-information__item:first-child {
  border-top: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .p-top-information__item {
    padding: 2rem 0;
  }
}
@media (hover: hover) {
  .p-top-information__item:hover {
    cursor: pointer;
  }
}

.p-top-information__item-meta {
  display: flex;
  justify-content: start;
  align-items: center;
  margin-bottom: 1.2rem;
}

.p-top-information__item-date {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-right: 2rem;
}
@media screen and (max-width: 767px) {
  .p-top-information__item-date {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

.p-top-information__item-category {
  display: flex;
  justify-content: start;
  align-items: center;
}
.p-top-information__item-category p {
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #0053A3;
  border-radius: 0.5rem;
  border: 1px solid #0053A3;
  padding: 0.6rem 2rem;
  margin-right: 1rem;
}
.p-top-information__item-category p.new {
  font-weight: 700;
  background: #FA5050;
  color: #ffffff;
  border: 1px solid #FA5050;
}
@media screen and (max-width: 767px) {
  .p-top-information__item-category p {
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 600;
    padding: 0.6rem 1.5rem;
  }
}

.p-top-information__item-text {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 850px) {
  .p-top-information__item-text {
    font-size: 1.2rem;
    line-height: 2;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
.p-top-information__item-text p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-top-information__item-text {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-top-sports__title {
  text-align: center;
  margin-bottom: 4rem;
}
.p-top-sports__title span {
  display: inline-block;
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #ffffff;
  position: relative;
}
.p-top-sports__title span::before {
  content: "";
  position: absolute;
  top: 1.6rem;
  transform: rotate(60deg);
  left: -4rem;
  width: 3.2rem;
  height: 0.2rem;
  background: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-top-sports__title span::before {
    display: none;
  }
}
.p-top-sports__title span::after {
  content: "";
  position: absolute;
  top: 1.6rem;
  transform: rotate(-60deg);
  right: -2rem;
  width: 3.2rem;
  height: 0.2rem;
  background: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-top-sports__title span::after {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .p-top-sports__title {
    text-align: left;
    margin-bottom: 4.5rem;
  }
  .p-top-sports__title span {
    font-size: 2.4rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}

.p-top-sorts__wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 4.4rem;
       column-gap: 4.4rem;
}
@media screen and (max-width: 767px) {
  .p-top-sorts__wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 1.4rem;
         column-gap: 1.4rem;
  }
}

.p-top-sports__item {
  width: 17rem;
  position: relative;
  z-index: 10;
}
.p-top-sports__item .spots-name {
  text-align: center;
  font-size: 1.4rem;
  line-height: 3.2857142857;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #ffffff;
}
.p-top-sports__item img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-top-sports__item {
    width: 100%;
  }
  .p-top-sports__item .spots-name {
    font-size: 1.4rem;
    line-height: 3.2857142857;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
}

.p-footer-banner__list {
  width: 26rem;
  padding-left: 6rem;
  border-left: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .p-footer-banner__list {
    width: 100%;
    padding-top: 6rem;
    padding-left: 0;
    border-left: none;
    border-top: 1px solid #CCCCCC;
  }
}

.p-footer-banner__item {
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-footer-banner__item {
    width: 28rem;
    margin: 0 auto;
  }
  .p-footer-banner__item:not(:last-of-type) {
    margin-bottom: 1.3rem;
  }
}
@media (hover: hover) {
  .p-footer-banner__item:hover {
    opacity: 0.7;
  }
}

.p-footer-btn {
  text-align: center;
}
.p-footer-btn a {
  display: inline-block;
  padding: 1.2rem 4rem 1.2rem 3rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 400;
  background: #ffffff;
  border: 1px solid #333333;
  border-radius: 0.5rem;
  position: relative;
  transition: 0.3s;
}
.p-footer-btn a i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 2rem;
  font-size: 1rem;
  margin-left: 1.4rem;
}
@media (hover: hover) {
  .p-footer-btn a:hover {
    transform: translateY(4px);
  }
}
@media screen and (max-width: 767px) {
  .p-footer-btn {
    text-align: center;
  }
  .p-footer-btn a {
    width: 100%;
    max-width: 32rem;
  }
}
.p-footer-btn.exclusive {
  margin-top: 5.8rem;
}

.p-footer-logo {
  width: 23.8rem;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-footer-logo:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .p-footer-logo {
    margin: 0 auto;
  }
  .p-footer-logo img {
    width: 25rem;
  }
}

.p-footer-nav__list {
  width: 70rem;
  display: flex;
  justify-content: space-around;
}
@media screen and (max-width: 767px) {
  .p-footer-nav__list {
    width: 100%;
    display: block;
    margin-top: 3.8rem;
    margin-bottom: 5.4rem;
  }
}

.p-footer-nav__item {
  transition: 0.3s;
}
@media (hover: hover) {
  .p-footer-nav__item:hover {
    opacity: 0.7;
  }
}
.p-footer-nav__item.head {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  padding-left: 2rem;
  margin-bottom: 1rem;
  position: relative;
}
.p-footer-nav__item.head::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.7rem;
  height: 0.7rem;
  border-right: 0.2rem solid #0053A3;
  border-bottom: 0.2rem solid #0053A3;
  transform: translateY(-50%) rotate(-45deg);
}
.p-footer-nav__item.head.contact::before {
  top: 1.3rem;
}
@media screen and (max-width: 767px) {
  .p-footer-nav__item.head {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-footer-nav__item.under {
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 400;
  padding-left: 1.4rem;
  margin-left: 0.2rem;
  margin-bottom: 1rem;
  position: relative;
}
.p-footer-nav__item.under::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  border-right: 0.1rem solid #333333;
  border-bottom: 0.1rem solid #333333;
  transform: translateY(-50%) rotate(-45deg);
}
.p-footer-nav__item.under.link {
  position: relative;
}
.p-footer-nav__item.under.link::after {
  content: "";
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  width: 0.8rem;
  height: 0.8rem;
  background-image: url(../img/icon/link-paste-icon.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .p-footer-nav__item.under.link::after {
    right: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .p-footer-nav__item.under {
    display: inline-block;
    padding-right: 2.5rem;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
  .p-footer-nav__item.under.sp-none {
    display: none;
  }
  .p-footer-nav__item.under.pr-none {
    padding-right: 0;
  }
  .p-footer-nav__item.under.pr-sp {
    padding-right: 1rem;
  }
}
.p-footer-nav__item.under-sub {
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-left: 1.5rem;
  margin-bottom: 1.3rem;
  padding-left: 1.4rem;
  position: relative;
}
.p-footer-nav__item.under-sub::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: #333333;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-footer-nav__item.under-sub {
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-footer-nav__item.mb {
  margin-bottom: 4.6rem;
}
@media screen and (max-width: 767px) {
  .p-footer-nav__item.mb {
    margin-bottom: 0;
  }
}
.p-footer-nav__item.mb-sp {
  margin-bottom: 4rem;
}

.p-footer-privacy {
  margin-top: 2.4rem;
  text-align: center;
}
.p-footer-privacy a {
  font-family: "Noto Sans JP", sans-serif;
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: 400;
  text-decoration: underline;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-footer-privacy a:hover {
    opacity: 0.7;
  }
}

.p-information-tag__list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 2rem;
}

.p-information-tag__item {
  text-align: center;
}
.p-information-tag__item a {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 400;
  width: 18rem;
  padding: 0.8rem 2rem;
  border-radius: 0.5rem;
  border: 1px solid #0053A3;
  white-space: nowrap;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-information-tag__item a:hover {
    background: #0053A3;
    color: #ffffff;
  }
}
@media screen and (max-width: 1000px) {
  .p-information-tag__item a {
    width: 20rem;
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .p-information-tag__item a {
    width: 17rem;
  }
}
.p-information-tag__item.current a {
  pointer-events: none;
  background: #0053A3;
  color: #ffffff;
}

.p-information-news__item {
  display: block;
  padding: 2rem 2rem;
  border-top: 1px solid #CCCCCC;
}
.p-information-news__item:last-of-type {
  border-bottom: 1px solid #CCCCCC;
  margin-bottom: 6rem;
}
@media screen and (max-width: 840px) {
  .p-information-news__item {
    padding: 2rem 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-information-news__item {
    padding: 1.5rem 0;
    width: 100%;
  }
}

.p-information-news__meta {
  display: flex;
  justify-content: start;
  align-items: center;
  -moz-column-gap: 1.8rem;
       column-gap: 1.8rem;
  margin-bottom: 1.2rem;
}
.p-information-news__meta time {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-information-news__meta time {
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

.p-information-news__category {
  display: flex;
  justify-content: start;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.p-information-news__category p {
  font-size: 1.2rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: 700;
  padding: 0.6rem 2rem;
  color: #0053A3;
  border: 1px solid #0053A3;
  border-radius: 0.5rem;
}
.p-information-news__category p.new {
  border: 1px solid #FA5050;
  background: #FA5050;
  color: #ffffff;
  margin-right: 1rem;
}
@media screen and (max-width: 767px) {
  .p-information-news__category p.new {
    margin-right: 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-information-news__category p {
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-weight: 400;
    padding: 0.4rem 1.2rem;
  }
}

.p-information-news__text {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.05em;
  font-weight: 400;
}
@media screen and (max-width: 840px) {
  .p-information-news__text {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.04em;
    font-weight: 400;
  }
}
.p-information-news__text p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.p-information-pagination {
  display: flex;
  justify-content: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  margin-top: 4rem;
}

.p-information-pagination .page-numbers {
  font-family: "Arial", "Noto Sans JP", sans-serif;
  width: 4rem;
  height: 3.6rem;
  border: 1px solid #7C7C7C;
  border-radius: 0.5rem;
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.5714285714;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #7C7C7C;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-information-pagination .page-numbers:hover {
    background: #0053A3;
    color: #ffffff;
  }
}
.p-information-pagination .page-numbers.dots {
  border: none;
  pointer-events: none;
}
.p-information-pagination .page-numbers.prev {
  display: none;
}
.p-information-pagination .page-numbers.next {
  display: none;
}
.p-information-pagination .page-numbers.current {
  background: #0053A3;
  border: 1px solid #0053A3;
  pointer-events: none;
  color: #ffffff;
}

.p-information-pagination__btn a {
  font-family: "Arial", "Noto Sans JP", sans-serif;
  width: 4rem;
  height: 3.6rem;
  border: 1px solid #7C7C7C;
  border-radius: 0.5rem;
  position: relative;
  transition: 0.3s;
}
.p-information-pagination__btn a span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.4rem;
  line-height: 1.1428571429;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #7C7C7C;
}
@media (hover: hover) {
  .p-information-pagination__btn a:hover {
    background: #0053A3;
  }
  .p-information-pagination__btn a:hover span {
    color: #ffffff;
  }
}

.p-information-pagination__btn.current a {
  background: #0053A3;
  border: 1px solid #0053A3;
  pointer-events: none;
}
.p-information-pagination__btn.current a span {
  color: #ffffff;
}

.p-information-pagination__dots {
  font-family: "Arial", "Noto Sans JP", sans-serif;
}

.p-page-exclusive-guideline {
  background: #E8EEF3;
  padding: 6.6rem 6rem 7.3rem 4rem;
  margin-bottom: 8rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-page-exclusive-guideline {
    display: block;
    padding: 4rem 2rem;
  }
}

.p-page-exclusive-guideline__title {
  width: 18%;
}
@media screen and (max-width: 767px) {
  .p-page-exclusive-guideline__title {
    width: 100%;
  }
}

.p-page-exclusive__title {
  font-size: 2.6rem;
  line-height: 1.6923076923;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  white-space: nowrap;
  position: relative;
}
.p-page-exclusive__title::after {
  content: "";
  position: absolute;
  top: calc(100% + 1rem);
  left: 50%;
  transform: translateX(-50%);
  width: 4.7rem;
  height: 0.1rem;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-page-exclusive__title {
    text-align: center;
    font-size: 2rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 4rem;
  }
}

.p-page-exclusive-guideline__text {
  width: 79%;
}
.p-page-exclusive-guideline__text h4 {
  margin-top: 0;
  font-size: 2.6rem;
  line-height: 1.6923076923;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 3rem;
}
.p-page-exclusive-guideline__text p {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-page-exclusive-guideline__text {
    width: 100%;
  }
  .p-page-exclusive-guideline__text h4 {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .p-page-exclusive-guideline__text p {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-page-exclusive-news {
  width: 92rem;
  margin: 0 auto;
  margin-bottom: 16rem;
}
.p-page-exclusive-news.archive {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .p-page-exclusive-news {
    width: 100%;
    margin-bottom: 6rem;
  }
}

.p-information-news__wrapper {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .p-information-news__wrapper {
    margin-bottom: 0;
  }
}

.p-exclusive-search {
  padding: 6.6rem 4rem 7rem;
  margin-bottom: 8rem;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .p-exclusive-search {
    padding: 4rem;
    margin-bottom: 4rem;
  }
}

.p-exclusive-search__category-list {
  margin-top: 5.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2rem;
}

.p-exclusive-search__category-item a {
  text-align: center;
  display: inline-block;
  padding: 0.8rem 2rem;
  min-width: 18rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 600;
  border-radius: 0.5rem;
  background: #ffffff;
  border: 1px solid #0053A3;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-exclusive-search__category-item a:hover {
    background: #0053A3;
    color: #ffffff;
  }
}
.p-exclusive-search__category-item a.current {
  background: #0053A3;
  color: #ffffff;
  pointer-events: none;
}

.p-exclusive-fixNews {
  width: 100%;
  max-width: 100rem;
  margin: 0 auto;
  padding: 6rem 7rem 8rem;
  border: 1px solid #CCCCCC;
  border-radius: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-exclusive-fixNews {
    padding: 4rem 1.5rem;
  }
}

.p-exclusive-fixNews__title {
  text-align: center;
  font-size: 4rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .p-exclusive-fixNews__title {
    font-size: 2rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 4rem;
  }
}

.p-exclusive-fixNews__item {
  display: block;
  padding-top: 2rem;
  padding-left: 3rem;
  padding-bottom: 2.6rem;
  border-bottom: 1px solid #CCCCCC;
  position: relative;
}
.p-exclusive-fixNews__item:first-of-type {
  border-top: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .p-exclusive-fixNews__item {
    padding: 1rem 0 1rem 2rem;
  }
}
.p-exclusive-fixNews__item::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1rem;
  height: 1.8rem;
  background-image: url(../img/icon/pin-icon.svg);
  background-repeat: no-repeat;
  background-size: cover;
}

.p-exclusive-fixNews__meta {
  display: flex;
  align-items: center;
  margin-bottom: 1.2rem;
}
.p-exclusive-fixNews__meta time {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-right: 1.8rem;
}
@media screen and (max-width: 767px) {
  .p-exclusive-fixNews__meta {
    display: block;
  }
  .p-exclusive-fixNews__meta time {
    display: inline-block;
    margin-bottom: 0.5rem;
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}
.p-exclusive-fixNews__meta .p-exclusive-fixNews__category {
  display: flex;
}
.p-exclusive-fixNews__meta .p-exclusive-fixNews__category p {
  font-family: "Noto Sans JP", sans-serif;
  padding: 0.6rem 2rem;
  color: #0053A3;
  border: 1px solid #0053A3;
  border-radius: 0.5rem;
  font-size: 1.2rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-right: 1rem;
}
.p-exclusive-fixNews__meta .p-exclusive-fixNews__category p.new {
  background: #FA5050;
  color: #ffffff;
  border: 1px solid #FA5050;
}
.p-exclusive-fixNews__meta .p-exclusive-fixNews__category p.file {
  position: relative;
}
.p-exclusive-fixNews__meta .p-exclusive-fixNews__category p.file::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(100% + 13px);
  width: 1.8rem;
  height: 2rem;
  background-image: url(../img/icon/pdf-icon.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .p-exclusive-fixNews__meta .p-exclusive-fixNews__category p {
    padding: 0.4rem 1.2rem;
  }
}

.p-exclusive-fixNews__text {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 400;
}

.p-company-overview__about-table {
  margin-top: 5.8rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-company-overview__about-table {
    margin-top: 4rem;
  }
}
.p-company-overview__about-table tr {
  display: flex;
  width: 100%;
  padding: 2.25rem 1rem 2.25rem 3rem;
  border-bottom: 1px solid #CCCCCC;
}
.p-company-overview__about-table tr:first-of-type {
  border-top: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .p-company-overview__about-table tr {
    display: block;
    padding: 1.5rem 0rem;
  }
}
.p-company-overview__about-table th {
  vertical-align: baseline;
  text-align: left;
  width: 19rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-company-overview__about-table th {
    width: 100%;
    display: block;
    font-size: 1.4rem;
    line-height: 1.8571428571;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-company-overview__about-table td {
  flex-grow: 1;
  padding-left: 4rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-company-overview__about-table td.table-data-flex {
  display: flex;
  justify-content: space-between;
  -moz-column-gap: 0.8rem;
       column-gap: 0.8rem;
}
.p-company-overview__about-table td.table-data-flex .table-data-list__right {
  width: 42.5rem;
}
.p-company-overview__about-table td.table-data-flex .link {
  transition: 0.3s;
}
@media (hover: hover) {
  .p-company-overview__about-table td.table-data-flex .link:hover {
    opacity: 0.8;
  }
}
@media screen and (max-width: 767px) {
  .p-company-overview__about-table td {
    width: 100%;
    display: block;
    padding-left: 0;
    font-size: 1.4rem;
    line-height: 1.8571428571;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
  .p-company-overview__about-table td.table-data-flex {
    display: block;
  }
  .p-company-overview__about-table td.table-data-flex .table-data-list__right {
    width: 100%;
  }
}

.p-company-overview__history-table {
  width: 100%;
  margin-top: 6rem;
}
.p-company-overview__history-table tr {
  display: flex;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  width: 100%;
  padding: 2.4rem 0;
  border-bottom: 1px solid #CCCCCC;
}
.p-company-overview__history-table tr:first-of-type {
  border-top: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .p-company-overview__history-table tr {
    display: block;
    width: 100%;
    padding: 1.5rem 0;
  }
}
.p-company-overview__history-table th {
  text-align: left;
  width: 27.1rem;
  padding-left: 3rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-company-overview__history-table th {
    display: block;
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #0053A3;
    padding-left: 0;
  }
}
.p-company-overview__history-table td {
  width: 80rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-company-overview__history-table td {
    display: block;
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-overview-organization__map {
  width: 100%;
  margin: 0 auto;
  margin-top: 10rem;
  padding-right: 4rem;
}
@media screen and (max-width: 767px) {
  .p-overview-organization__map {
    margin-top: 5rem;
    padding-right: 4rem;
    overflow-x: scroll;
    width: 100%;
    padding-bottom: 2rem;
  }
  .p-overview-organization__map img {
    max-width: 60rem;
  }
}

.p-company-overview__qualified-contents {
  background: #E8EEF3;
  padding: 4.7rem 3rem 4rem 4rem;
}
.p-company-overview__qualified-contents:first-of-type {
  margin-top: 6rem;
}
.p-company-overview__qualified-contents:not(:last-child) {
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-company-overview__qualified-contents {
    width: calc(100% + 4rem);
    margin-left: -2rem;
    padding: 4rem 2rem;
  }
}

.p-company-overview__qualified-head {
  font-size: 2.6rem;
  line-height: 1;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
}

.p-company-overview__qualified-wrapper {
  margin-top: 3rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 767px) {
  .p-company-overview__qualified-wrapper {
    display: block;
  }
}

.p-company-overview__qualified-item {
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.1em;
  font-weight: 400;
  white-space: nowrap;
}
.p-company-overview__qualified-item .ls {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-company-overview__qualified-item {
    white-space: wrap;
  }
}

.p-company-overview__section-list {
  margin: 12rem 0 0;
  padding: 2.2rem;
  background: #E8EEF3;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .p-company-overview__section-list {
    margin: 6rem 0 0;
    flex-wrap: wrap;
    gap: 2rem;
  }
}

.p-company-overview__section-item a {
  display: inline-block;
  background: #ffffff;
  text-align: center;
  padding: 1.2rem 3rem;
  min-width: 14.8rem;
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  transition: 0.3s;
}
.p-company-overview__section-item a i {
  margin-right: 1.4rem;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-company-overview__section-item a {
    width: 17rem;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
@media (hover: hover) {
  .p-company-overview__section-item a:hover {
    background: #0053A3;
    color: #ffffff;
    transform: translateY(4px);
  }
  .p-company-overview__section-item a:hover i {
    color: #ffffff;
  }
}

.p-company-wakou {
  margin-top: 12rem;
  display: grid;
  grid-template-columns: 55% 45%;
  margin-bottom: 6rem;
  height: 50rem;
}
@media screen and (max-width: 767px) {
  .p-company-wakou {
    height: 100%;
    margin-top: 6rem;
    display: block;
  }
}

.p-company-wakou__text-wrapper {
  background: #0053A3;
  padding: 10rem 5rem;
  height: 50rem;
}
@media screen and (max-width: 1260px) {
  .p-company-wakou__text-wrapper {
    padding-left: 3rem;
    padding-right: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-company-wakou__text-wrapper {
    height: 100%;
    padding: 4rem;
    margin-top: -1rem;
  }
}
@media screen and (max-width: 767px) and (max-width: 370px) {
  .p-company-wakou__text-wrapper {
    padding: 2rem;
  }
}

.p-company-wakou__title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__title {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
}

.p-company-wakou__text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #ffffff;
  margin-bottom: 6.8rem;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__text {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 600;
    margin-bottom: 3rem;
  }
}

.p-company-wakou__img img {
  width: 100%;
  height: 50rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center bottom;
     object-position: center bottom;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__img img {
    height: 100%;
    max-height: 50rem;
    aspect-ratio: 560/500;
  }
}

ol.p-company-wakou_way {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  padding: 0;
  width: 100%;
  max-width: 90rem;
  margin: 0 auto;
  margin-top: 6rem;
}

ol.p-company-wakou_way > li {
  width: 100%;
  background: #e8eef3;
  padding: 3rem;
  margin: 6rem 0 0;
  border-radius: 10px;
}

p.p-company-wakou_way-ttl {
  color: #1b53a3;
  font-size: 2rem;
  letter-spacing: 0.3rem;
  margin: 0 0 1rem;
  line-height: 1.4;
}

span.p-company-wakou_way-num {
  padding-right: 0.5rem;
}

p.p-company-wakou_way-ttl {
  color: #1b53a3;
  font-size: 2rem;
  letter-spacing: 0.3rem;
}

p.p-company-wakou_way-ttl p {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  p.p-company-wakou_way-ttl p {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}

.p-company-wakou__message-wrapper {
  margin-top: 12rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__message-wrapper {
    margin-top: 4rem;
    display: block;
  }
}

.p-company-wakou__message-textWrap {
  width: 45.833%;
}
.p-company-wakou__message-textWrap p {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-company-wakou__message-textWrap p:not(:last-of-type) {
  margin-bottom: 3.8rem;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__message-textWrap {
    width: 100%;
  }
  .p-company-wakou__message-textWrap p {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
  .p-company-wakou__message-textWrap p:not(:last-of-type) {
    margin-bottom: 2rem;
  }
}

.p-company-wakou__message-imgWrap {
  width: 48.333%;
}
.p-company-wakou__message-imgWrap img {
  width: 100%;
}
.p-company-wakou__message-imgWrap p {
  text-align: right;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__message-imgWrap {
    margin-top: 4rem;
    width: 100%;
  }
  .p-company-wakou__message-imgWrap p {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-company-wakou__philosophy-text {
  margin-top: 10rem;
  text-align: center;
  font-size: 1.8rem;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__philosophy-text {
    margin-top: 6rem;
    text-align: left;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-company-wakou__education-wrapper {
  margin-top: 12rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__education-wrapper {
    margin-top: 4rem;
    display: block;
  }
}

.p-company-wakou__education-text {
  width: 45.833%;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__education-text {
    width: 100%;
  }
}

.p-company-wakou__education-imgWrap {
  width: 41.666%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  row-gap: 2rem;
}
@media screen and (max-width: 767px) {
  .p-company-wakou__education-imgWrap {
    margin-top: 4rem;
    width: 100%;
  }
}

/*----------------------------------
    共通title
-----------------------------------*/
.p-sdgs__title-lead {
  font-family: "Rubik", sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__title-lead {
    display: none;
  }
}

.p-sdgs__title {
  font-size: 4rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-sdgs__title {
    font-size: 2.8rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
.p-sdgs__title.underline {
  position: relative;
}
.p-sdgs__title.underline::after {
  content: "";
  position: absolute;
  bottom: -4rem;
  left: 0;
  width: 7.3rem;
  height: 1px;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-sdgs__title.underline::after {
    display: none;
  }
}

/*----------------------------------
    head - contents
-----------------------------------*/
.p-sdgs__head-wrapper {
  display: flex;
  justify-content: space-between;
  margin-bottom: 9rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__head-wrapper {
    display: block;
    margin-bottom: 4.5rem;
  }
}

.p-sdgs__head-text-wrapper {
  width: 55rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__head-text-wrapper {
    width: 100%;
  }
}

.p-sdgs__head-text {
  margin-top: 12rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-sdgs__head-text {
    margin-top: 0;
    font-size: 1.6rem;
    line-height: 1.875;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 4.5rem;
  }
}

.p-sdgs__head-img {
  margin-right: -10rem;
  width: 72rem;
}
@media screen and (max-width: 1450px) {
  .p-sdgs__head-img {
    width: 45.15vw;
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-sdgs__head-img {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2rem;
  }
}

.p-sdgs__evidence-img {
  text-align: center;
}
.p-sdgs__evidence-img img {
  width: 97.4rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__evidence-img {
    width: 100%;
    margin-bottom: 3.8rem;
  }
}

.p-sdgs__goal-img {
  position: absolute;
  top: calc(100% + 78px);
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 60px);
}

.p-sdgs__main-title {
  font-size: 4rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
}
.p-sdgs__main-title.underline {
  position: relative;
}
.p-sdgs__main-title.underline::after {
  content: "";
  position: absolute;
  bottom: -4rem;
  left: 0;
  width: 7.3rem;
  height: 1px;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-sdgs__main-title.underline::after {
    display: none;
  }
}

.p-sdgs__card-wrapper {
  display: flex;
  justify-content: start;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  margin-top: 4.8rem;
}
.p-sdgs__card-wrapper.content-right {
  justify-content: end;
}
.p-sdgs__card-wrapper.content-right.row2 {
  margin-right: 19rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__card-wrapper {
    display: block;
    margin-top: 14.7rem;
  }
  .p-sdgs__card-wrapper.content-right {
    margin-top: 2.8rem;
  }
  .p-sdgs__card-wrapper.content-right.row2 {
    margin-right: 0;
  }
  .p-sdgs__card-wrapper.content-right.mt {
    margin-top: 14.7rem;
  }
}

.p-sdgs__card {
  width: 38rem;
  background: #ffffff;
  box-shadow: 0 3px 16px rgba(0, 0, 0, 0.16);
  border-radius: 1rem;
  padding: 4.7rem 4rem 4rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-sdgs__card {
    width: 100%;
    padding: 2.4rem 2rem 3.8rem;
  }
  .p-sdgs__card:not(:last-of-type) {
    margin-bottom: 2.8rem;
  }
}
@media screen and (max-width: 767px) {
  .p-sdgs__card .head-wrap {
    display: flex;
    justify-content: start;
    align-items: center;
    flex-direction: row-reverse;
    margin-bottom: 2rem;
  }
}
.p-sdgs__card .number {
  font-family: "Rubik", sans-serif;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 1rem;
  font-size: 14.1rem;
  line-height: 1.1843971631;
  letter-spacing: 0em;
  font-weight: 500;
  color: #E8EEF3;
}
.p-sdgs__card .title {
  text-align: center;
  font-size: 2.6rem;
  line-height: 1.3846153846;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-bottom: 4.4rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__card .title {
    text-align: left;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 0;
  }
}
.p-sdgs__card .img {
  text-align: center;
  margin-bottom: 3rem;
}
.p-sdgs__card .img img {
  width: 20rem;
  height: 20rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__card .img {
    margin-bottom: 0;
    margin-right: 2rem;
  }
  .p-sdgs__card .img img {
    width: 11.5rem;
    height: 11.5rem;
  }
}
.p-sdgs__card .list {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 2rem;
}
.p-sdgs__card .list.mb {
  margin-bottom: 4.4rem;
}
@media screen and (max-width: 767px) {
  .p-sdgs__card .list {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-sdgs__card .link a {
  display: inline-block;
  white-space: nowrap;
  width: 100%;
  padding: 1.8rem 0 1.3rem;
  text-align: center;
  background: #0053A3;
  color: #ffffff;
  border: 1px solid #0053A3;
  border-radius: 3.2rem;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 600;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-sdgs__card .link a:hover {
    background: transparent;
    color: #0053A3;
  }
}
.p-sdgs__card .link .br-property-a {
  display: none;
}
@media screen and (max-width: 1000px) {
  .p-sdgs__card .link .br-property-a {
    display: block;
  }
  .p-sdgs__card .link .br-property-b {
    display: none;
  }
}

/*----------------------------------
    労働安全大会
-----------------------------------*/
.p-cooperation-anzen__title {
  font-size: 4rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__title {
    font-size: 2.4rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
}

.p-cooperation-anzen__text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__text {
    margin-bottom: 4rem;
  }
}

.p-cooperation-anzen__subtitle {
  position: relative;
  font-size: 3.2rem;
  line-height: 1.3125;
  letter-spacing: 0.1em;
  font-weight: 600;
  padding-left: 3rem;
  margin-bottom: 4rem;
}
.p-cooperation-anzen__subtitle::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1rem;
  height: 100%;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__subtitle {
    font-size: 2rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 700;
    padding-left: 2rem;
  }
  .p-cooperation-anzen__subtitle::after {
    width: 0.8rem;
  }
}

.p-cooperation-anzen__img-lecture {
  width: 100%;
  max-width: 101.7rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-cooperation-anzen__img-lecture img {
  width: 50rem;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__img-lecture {
    display: block;
  }
  .p-cooperation-anzen__img-lecture img {
    width: 100%;
    max-width: 50rem;
    margin: 0 auto;
  }
}

/*----------------------------------
    会員名簿
-----------------------------------*/
.p-cooperation-anzen__table-head {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
  .table-wrapper {
    overflow-x: scroll;
  }
}

.p-cooperation-anzen__table {
  width: 100%;
  display: block;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__table {
    width: 110rem;
  }
}
.p-cooperation-anzen__table tbody {
  width: 100%;
  display: block;
}
.p-cooperation-anzen__table tr {
  width: 100%;
}
.p-cooperation-anzen__table th {
  padding: 1.5rem 0 1.3rem;
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__table th {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
    padding: 1rem 0;
  }
}
.p-cooperation-anzen__table td {
  padding: 1.5rem 0 1.3rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  vertical-align: baseline;
  border-bottom: 1px solid #CCCCCC;
}
@media screen and (max-width: 1260px) {
  .p-cooperation-anzen__table td {
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__table td {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
    padding: 1rem 0;
  }
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__table .address {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-cooperation-anzen__table .company-name {
  width: 38rem;
  padding-left: 3rem;
  padding-right: 1rem;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__table .company-name {
    width: 30rem;
    padding-left: 1rem;
  }
}

.p-cooperation-anzen__table .company-name a[target*="_blank"] {
  position: relative;
  display: inline-block;
  text-decoration: underline;
}

.p-cooperation-anzen__table .industry-name {
  width: 30rem;
  padding-right: 1rem;
}
@media screen and (max-width: 767px) {
  .p-cooperation-anzen__table .industry-name {
    width: 30rem;
    padding-left: 1rem;
  }
}

/*----------------------------------
    本社
-----------------------------------*/
.p-access__main-office-wrapper {
  margin-top: 9.6rem;
  margin-bottom: 13.6rem;
  display: flex;
  justify-content: center;
  -moz-column-gap: 11.9rem;
       column-gap: 11.9rem;
}
@media screen and (max-width: 767px) {
  .p-access__main-office-wrapper {
    margin: 4rem 0;
    display: block;
  }
}

.p-access__main-office-text {
  width: 60rem;
}
@media screen and (max-width: 767px) {
  .p-access__main-office-text {
    width: 100%;
  }
}
.p-access__main-office-text .address {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 4.3rem;
}
@media screen and (max-width: 767px) {
  .p-access__main-office-text .address {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 2rem;
  }
}
.p-access__main-office-text .contents {
  padding: 4.7rem 4rem 3.5rem;
  border: 1px solid #CCCCCC;
  border-radius: 1rem;
}
.p-access__main-office-text .contents:first-of-type {
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-access__main-office-text .contents {
    padding: 2rem 1rem;
  }
  .p-access__main-office-text .contents:first-of-type {
    margin-bottom: 3rem;
  }
}
.p-access__main-office-text .title {
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  padding-left: 2rem;
  margin-bottom: 2.7rem;
  position: relative;
}
.p-access__main-office-text .title::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.8rem;
  height: 100%;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-access__main-office-text .title {
    margin-bottom: 2rem;
  }
}
.p-access__main-office-text .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-access__main-office-text .text {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-access__main-office-img {
  width: 36.6rem;
}
.p-access__main-office-img img:first-of-type {
  margin-bottom: 3rem;
}

/*----------------------------------
    支店・営業所
-----------------------------------*/
.p-access__branch-wrapper {
  margin-top: 13rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
}
@media screen and (max-width: 767px) {
  .p-access__branch-wrapper {
    margin-top: 6rem;
    display: block;
  }
}

.p-access__branch-item {
  padding: 4rem;
  padding-top: 4.7rem;
  background: #E8EEF3;
}
@media screen and (max-width: 767px) {
  .p-access__branch-item {
    padding: 2rem;
  }
  .p-access__branch-item:not(:last-of-type) {
    margin-bottom: 3rem;
  }
}
.p-access__branch-item .name {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  .p-access__branch-item .name {
    font-size: 2rem;
    line-height: 2;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 1.4rem;
  }
}
.p-access__branch-item .address {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 3rem;
}
.p-access__branch-item .address.mb {
  margin-bottom: 6.5rem;
}
@media screen and (max-width: 767px) {
  .p-access__branch-item .address {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 2rem;
  }
  .p-access__branch-item .address.mb {
    margin-bottom: 2rem;
  }
}
.p-access__branch-item .branch-map {
  position: relative;
  width: 100%;
  padding-top: 66.6%; /* = height ÷ width × 100 */
}
.p-access__branch-item .branch-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*----------------------------------
    グループ会社
-----------------------------------*/
.p-access__group-table {
  margin-top: 10rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-access__group-table {
    margin-top: 6rem;
  }
}
.p-access__group-table tr {
  display: block;
  width: 100%;
  padding: 2.4rem 2rem;
  border-bottom: 1px solid #CCCCCC;
}
.p-access__group-table tr:first-of-type {
  border-top: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .p-access__group-table tr {
    padding: 1.6rem 0rem;
  }
}
.p-access__group-table th {
  text-align: left;
  vertical-align: baseline;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  width: 25rem;
}
@media screen and (max-width: 767px) {
  .p-access__group-table th {
    display: block;
    width: 100%;
  }
}
.p-access__group-table td {
  font-size: 1.8rem;
  line-height: 1.7777777778;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-access__group-table td {
    display: block;
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) and (max-width: 374px) and (max-width: 767px) {
  .p-access__group-table td {
    font-size: calc((16 / 391) * 100vw);
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-strength__head-title {
  font-size: 6rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  text-align: center;
  margin-bottom: 9.5rem;
}
@media screen and (max-width: 767px) {
  .p-strength__head-title {
    font-size: 3.3rem;
    line-height: 1.303030303;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 2.8rem;
  }
}

.p-strength__head-contents-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
@media screen and (max-width: 767px) {
  .p-strength__head-contents-wrapper {
    display: block;
  }
}

.p-strength__head-contents-item {
  width: 38rem;
  height: 15.3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 1.8rem;
       column-gap: 1.8rem;
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.11);
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-strength__head-contents-item {
    width: 100%;
    height: 100%;
    padding: 3rem 2rem 1.6rem;
  }
  .p-strength__head-contents-item:not(:last-of-type) {
    margin-bottom: 2.8rem;
  }
}
.p-strength__head-contents-item .points {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(100% - 20px);
  text-align: center;
  font-family: "Rubik", sans-serif;
  font-size: 1.4rem;
  line-height: 1.2142857143;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.p-strength__head-contents-item .points .number {
  font-size: 5rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-strength__head-contents-item .points {
    position: relative;
    left: 0;
    bottom: 0;
    transform: translateX(0);
    font-size: 1rem;
    line-height: 1.2;
    letter-spacing: 0.1em;
    font-weight: 500;
    margin-right: 1rem;
  }
  .p-strength__head-contents-item .points .number {
    font-size: 3.8rem;
    line-height: 1.2105263158;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}
.p-strength__head-contents-item .img01 {
  margin-top: -0.5rem;
  width: 8.7rem;
  height: 7rem;
}
.p-strength__head-contents-item .img02 {
  margin-top: 1rem;
  width: 6.3rem;
  height: 9.2rem;
}
.p-strength__head-contents-item .img03 {
  width: 7.8rem;
  height: 8.8rem;
}
.p-strength__head-contents-item .text {
  font-size: 3.3rem;
  line-height: 1.7272727273;
  letter-spacing: 0.1em;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .p-strength__head-contents-item .img01 {
    margin-top: 0;
    width: 6rem;
    height: 4.7rem;
  }
  .p-strength__head-contents-item .img02 {
    margin-top: 0;
    width: 4.2rem;
    height: 6.2rem;
  }
  .p-strength__head-contents-item .img03 {
    width: 5.2rem;
    height: 5.9rem;
  }
  .p-strength__head-contents-item .text {
    font-size: 2rem;
    line-height: 1.7;
    letter-spacing: 0.1em;
    font-weight: 500;
    margin-left: 1rem;
  }
}

.p-strength__item:not(:last-of-type) {
  margin-bottom: 21.3rem;
}
@media screen and (max-width: 767px) {
  .p-strength__item:not(:last-of-type) {
    margin-bottom: 0;
  }
}

.p-strength__contents-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-strength__contents-wrapper.points02 {
  align-items: start;
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .p-strength__contents-wrapper {
    display: block;
    margin-bottom: 0;
  }
}

.p-strength__title-wrapper {
  margin-bottom: 7rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-strength__title-wrapper {
    margin-bottom: 2.8rem;
  }
}
.p-strength__title-wrapper::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 19.5rem;
  height: 14.6rem;
  background-image: url(../img/page-strength/strength-points-bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .p-strength__title-wrapper::after {
    width: 30.77vw;
    height: 23.077vw;
    margin-left: -2rem;
  }
}
.p-strength__title-wrapper .points {
  position: relative;
  display: inline-block;
  text-align: center;
  z-index: 1;
  padding-top: 3rem;
  padding-left: 3rem;
  font-family: "Rubik", sans-serif;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.2142857143;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.p-strength__title-wrapper .points .number {
  font-size: 5rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-strength__title-wrapper .points {
    padding-left: 0;
    padding-top: 1.8rem;
    font-size: 1rem;
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
  .p-strength__title-wrapper .points .number {
    font-size: 3rem;
    line-height: 1.2;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}
.p-strength__title-wrapper .head-title {
  padding-left: 8.4rem;
  font-size: 11rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-strength__title-wrapper .head-title {
    text-align: center;
    padding-left: 0;
    font-size: 3.8rem;
    line-height: 1.7105263158;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

.p-strength__img-wrapper {
  text-align: right;
}
.p-strength__img-wrapper.point01 {
  margin-top: -3rem;
  width: 30.4rem;
}
@media screen and (max-width: 767px) {
  .p-strength__img-wrapper.point01 {
    margin: auto;
    margin-top: 0rem;
    margin-bottom: 3rem;
  }
}
.p-strength__img-wrapper.points02 {
  margin-right: -4rem;
  margin-left: -8rem;
  margin-top: 8rem;
}
@media screen and (max-width: 1380px) {
  .p-strength__img-wrapper.points02 {
    margin-left: -6rem;
    margin-right: 0;
  }
}
.p-strength__img-wrapper.points02 .img-01 {
  width: 57.6rem;
}
@media screen and (max-width: 1380px) {
  .p-strength__img-wrapper.points02 .img-01 {
    width: 37.74vw;
  }
}
.p-strength__img-wrapper.points02 .img-02 {
  width: 41.8rem;
}
@media screen and (max-width: 1380px) {
  .p-strength__img-wrapper.points02 .img-02 {
    width: 30.74vw;
  }
}
@media screen and (max-width: 767px) {
  .p-strength__img-wrapper {
    display: block;
    width: 100%;
    margin-bottom: 3.8rem;
    text-align: center;
  }
  .p-strength__img-wrapper img {
    width: 60%;
  }
  .p-strength__img-wrapper img:not(:last-of-type) {
    margin-bottom: 0;
  }
  .p-strength__img-wrapper.points02 {
    width: 70%;
    margin: 0 auto;
    margin-bottom: 3.7rem;
  }
  .p-strength__img-wrapper.points02 .img-01, .p-strength__img-wrapper.points02 .img-02 {
    width: 100%;
  }
}

.p-strength__text-wrapper {
  width: 78.4rem;
}
.p-strength__text-wrapper .head-text {
  margin-right: -21rem;
  font-size: 6rem;
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 4.7rem;
}
@media screen and (max-width: 1700px) {
  .p-strength__text-wrapper .head-text.wide {
    font-size: 3.63vw;
    margin-right: 0;
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .p-strength__text-wrapper {
    width: 100%;
  }
  .p-strength__text-wrapper .head-text {
    margin-right: 0;
    font-size: 2rem;
    line-height: 1.9;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 3.8rem;
  }
  .p-strength__text-wrapper .head-text.wide {
    font-size: 2rem;
    line-height: 1.9;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}
.p-strength__text-wrapper .text {
  font-size: 2rem;
  line-height: 2.3;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 4rem;
}
.p-strength__text-wrapper .text.row1 {
  width: 64.3rem;
}
.p-strength__text-wrapper .text.row2 {
  width: 66.4rem;
}
.p-strength__text-wrapper .text.row3 {
  width: 80.7rem;
}
@media screen and (max-width: 767px) {
  .p-strength__text-wrapper .text {
    font-size: 1.4rem;
    line-height: 2.1428571429;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
  .p-strength__text-wrapper .text.row1 {
    width: 100%;
  }
  .p-strength__text-wrapper .text.row2 {
    width: 100%;
  }
  .p-strength__text-wrapper .text.row3 {
    width: 100%;
    margin-bottom: 0;
  }
}

.p-strength__between-img {
  margin-bottom: 16rem;
}
.p-strength__between-img.img1 {
  max-width: calc(100vw - (100vw - 120rem) / 2);
  margin-left: calc((100vw - 120rem) / 2 * -1);
}
@media screen and (max-width: 1260px) {
  .p-strength__between-img.img1 {
    max-width: calc(100% + 6rem);
    margin-left: -3rem;
  }
}
.p-strength__between-img.img2 {
  max-width: calc(100vw - (100vw - 120rem) / 2);
  margin-right: calc((100vw - 120rem) / 2 * -1);
}
@media screen and (max-width: 1260px) {
  .p-strength__between-img.img2 {
    max-width: calc(100% + 6rem);
    margin-left: -3rem;
  }
}
@media screen and (max-width: 767px) {
  .p-strength__between-img {
    max-width: calc(100% + 4rem);
    margin-left: -2rem;
    margin-top: 5rem;
    margin-bottom: 5rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    aspect-ratio: 375/100;
  }
}

.p-strength__detail-eco {
  padding-top: 15rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-eco {
    padding-top: 8rem;
  }
}

.p-strength__detail-title {
  padding-left: 3.7rem;
  margin-bottom: 3rem;
  font-size: 3.2rem;
  line-height: 1.3125;
  letter-spacing: 0.1em;
  font-weight: 600;
  position: relative;
}
.p-strength__detail-title::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1.2rem;
  height: 100%;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-title {
    padding-left: 2rem;
    font-size: 1.8rem;
    line-height: 1.7777777778;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
  .p-strength__detail-title::after {
    width: 0.8rem;
  }
}

/*----------------------------------
    クリーニング
-----------------------------------*/
.p-strength__detail-cleaning-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: start;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-cleaning-wrapper {
    display: block;
    margin-bottom: 4.8rem;
  }
}

.p-strength__detail-cleaning-text {
  width: 30%;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-cleaning-text {
    width: 100%;
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-strength__detail-cleaning-imgWrap {
  display: flex;
  justify-content: space-between;
  align-items: start;
  width: 65%;
}
@media screen and (max-width: 1420px) {
  .p-strength__detail-cleaning-imgWrap {
    width: 68.5%;
  }
}
@media screen and (max-width: 767px) {
  .p-strength__detail-cleaning-imgWrap {
    display: block;
    width: 100%;
    margin-top: 4rem;
  }
}
.p-strength__detail-cleaning-imgWrap .img-item {
  text-align: center;
  width: 35rem;
}
.p-strength__detail-cleaning-imgWrap .img-item.arrow {
  position: relative;
}
.p-strength__detail-cleaning-imgWrap .img-item.arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 35px);
  transform: translateY(-50%);
  right: -5rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 0 20px 20px;
  border-color: transparent transparent transparent #0053A3;
}
.p-strength__detail-cleaning-imgWrap .img-item img {
  display: block;
  width: 100%;
  margin-bottom: 2rem;
}
.p-strength__detail-cleaning-imgWrap .img-item p {
  display: inline-block;
  padding: 0.8rem 3.5rem;
  border-radius: 3rem;
  border: 1px solid #3D7BB7;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.15em;
  font-weight: 400;
  text-align: left;
  color: #3D7BB7;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-cleaning-imgWrap .img-item p {
    border-radius: 30px;
  }
}
@media screen and (max-width: 767px) {
  .p-strength__detail-cleaning-imgWrap .img-item {
    width: 100%;
  }
  .p-strength__detail-cleaning-imgWrap .img-item:first-of-type {
    margin-bottom: 6.2rem;
  }
  .p-strength__detail-cleaning-imgWrap .img-item.arrow::after {
    content: "";
    top: calc(100% + 2rem);
    left: 50%;
    transform: translate(-50%, 0);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 21px 0 21px;
    border-color: #0053A3 transparent transparent transparent;
  }
  .p-strength__detail-cleaning-imgWrap .img-item img {
    margin-bottom: 2.7rem;
  }
  .p-strength__detail-cleaning-imgWrap .img-item p {
    border-radius: 1.8rem;
    font-size: 1.4rem;
    line-height: 1.4285714286;
    letter-spacing: 0.15em;
    font-weight: 400;
  }
}

/*----------------------------------
    リサイクル
-----------------------------------*/
.p-strength__detail-recycle-wrapper {
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-wrapper {
    margin-bottom: 6rem;
  }
}

.p-strength__detail-recycle-img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-img {
    text-align: center;
  }
  .p-strength__detail-recycle-img .head-icon {
    width: 90%;
    margin: auto;
  }
  .p-strength__detail-recycle-img .img {
    text-align: left;
    width: calc(100% + 2rem);
    margin-left: -2rem;
  }
}

.p-strength__detail-recycle-productsContents {
  width: 100%;
  background: #0053A3;
  padding: 3rem 5rem;
  margin-top: 8rem;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsContents {
    width: 100%;
    padding: 2.8rem 1.2rem;
  }
}

.p-strength__detail-recycle-productsTitle {
  text-align: center;
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 3.4rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsTitle {
    font-size: 2.2rem;
    line-height: 1.6363636364;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 2.8rem;
  }
}

.p-strength__detail-recycle-productsWrapper {
  margin-top: 3.4rem;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsWrapper {
    display: block;
  }
}

.p-strength__detail-kawasaki-img {
  width: 31.7rem;
  margin-right: 5rem;
}
.p-strength__detail-kawasaki-img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-kawasaki-img {
    width: 100%;
    max-width: 40rem;
    margin: 0 auto;
  }
}

.p-strength__detail-recycle-productsWrap {
  width: 74.5rem;
  display: block;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsWrap {
    width: 100%;
  }
}

.p-strength__detail-recycle-productsItem {
  background: #ffffff;
  padding: 2rem 2.5rem;
  border-radius: 1rem;
}
.p-strength__detail-recycle-productsItem:first-of-type {
  margin: 3rem 0;
}
.p-strength__detail-recycle-productsItem .img {
  width: 100%;
  height: auto;
}
.p-strength__detail-recycle-productsItem .wrap {
  display: grid;
  grid-template-columns: 14rem auto;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsItem .wrap {
    grid-template-columns: 10rem auto;
    -moz-column-gap: 1.6rem;
         column-gap: 1.6rem;
    align-items: center;
  }
}
.p-strength__detail-recycle-productsItem .wrap .title {
  grid-row: 1/2;
  grid-column: 2/3;
  width: 38rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsItem .wrap .title {
    grid-row: 1/2;
    grid-column: 1/3;
    width: 100%;
    max-width: 100%;
  }
}
.p-strength__detail-recycle-productsItem .wrap .img {
  grid-row: 1/4;
  grid-column: 1/2;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsItem .wrap .img {
    grid-row: 3/4;
    grid-column: 1/2;
  }
}
.p-strength__detail-recycle-productsItem .wrap .text {
  grid-row: 2/3;
  grid-column: 2/3;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #0053A3;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsItem .wrap .text {
    grid-row: 2/3;
    grid-column: 1/3;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.06em;
    font-weight: 400;
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
}
.p-strength__detail-recycle-productsItem .wrap .link {
  grid-row: 3/4;
  grid-column: 2/3;
  margin-top: -1rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsItem .wrap .link {
    grid-row: 3/4;
    grid-column: 2/3;
    margin-top: 0;
    margin-right: -1rem;
  }
}
.p-strength__detail-recycle-productsItem .wrap .link a {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 500;
  text-decoration: underline;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsItem .wrap .link a {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
@media (hover: hover) {
  .p-strength__detail-recycle-productsItem .wrap .link a:hover {
    opacity: 0.7;
  }
}
.p-strength__detail-recycle-productsItem .wrap .link a::after {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: calc(100% + 4px);
  width: 1rem;
  height: auto;
  aspect-ratio: 1;
  background-image: url(../img/icon/link-paste-icon.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-recycle-productsItem .wrap .link a::after {
    display: none;
  }
}
.p-strength__detail-recycle-productsItem .wrap .link a span {
  position: relative;
}
.p-strength__detail-recycle-productsItem .wrap .link a span::after {
  content: "";
  position: absolute;
  top: 0rem;
  right: -1.4rem;
  width: 1rem;
  height: auto;
  aspect-ratio: 1;
  background-image: url(../img/icon/link-paste-icon.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

/*----------------------------------
    エコチューニング
-----------------------------------*/
.p-strength__detail-eco-wrapper {
  display: flex;
  justify-content: start;
  -moz-column-gap: 9.5rem;
       column-gap: 9.5rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-eco-wrapper {
    display: block;
    text-align: center;
  }
}
.p-strength__detail-eco-wrapper .text-wrapper {
  width: 66rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-eco-wrapper .text-wrapper {
    width: 100%;
  }
}

.p-strength__detail-eco-text {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-eco-text {
    text-align: left;
    width: 100%;
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-strength__detail-eco-img {
  width: 25.5rem;
  height: auto;
  margin-top: -10rem;
}
@media screen and (max-width: 767px) {
  .p-strength__detail-eco-img {
    width: 20rem;
    margin: auto;
    margin-top: 4.5rem;
  }
}

.p-strength__eco-link {
  margin-top: 4rem;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-strength__eco-link {
    text-align: center;
  }
}
.p-strength__eco-link a {
  display: inline-block;
  white-space: nowrap;
  padding: 1.8rem 4rem 1.3rem;
  text-align: center;
  background: #0053A3;
  color: #ffffff;
  border: 1px solid #0053A3;
  border-radius: 3.2rem;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 600;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-strength__eco-link a:hover {
    background: transparent;
    color: #0053A3;
  }
}

.p-service__head-text {
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.15em;
  font-weight: 400;
  margin-top: 12rem;
  margin-bottom: 8.8rem;
}
@media screen and (max-width: 767px) {
  .p-service__head-text {
    margin-top: 6rem;
    margin-bottom: 4rem;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

.p-service-achievement__head-text {
  margin-top: 12rem;
  margin-bottom: 7.7rem;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.15em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-service-achievement__head-text {
    margin: 6rem 0;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

/*----------------------------
    tag List
-----------------------------*/
.p-service-achievement__tag-wrapper {
  border-radius: 1rem;
  padding: 3.7rem 2rem 4.8rem 4.5rem;
  border: 1px solid #CCCCCC;
  display: flex;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .p-service-achievement__tag-wrapper {
    padding: 2rem;
    display: block;
    margin-bottom: 4rem;
  }
}

.p-service-achievement__search-text {
  margin-top: 1rem;
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  white-space: nowrap;
  margin-right: 6rem;
}
@media screen and (max-width: 767px) {
  .p-service-achievement__search-text {
    margin-right: 0;
    margin-bottom: 2rem;
  }
}

.p-service-achievement__tag-list {
  flex-grow: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.p-service-achievement__tag-item a {
  display: inline-block;
  padding: 1.4rem 2.8rem;
  border: 1px solid #CCCCCC;
  border-radius: 5rem;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  transition: 0.3s;
}
.p-service-achievement__tag-item a.current {
  pointer-events: none;
  border-color: #0053A3;
  background: #0053A3;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-service-achievement__tag-item a {
    padding: 1rem 2rem;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media (hover: hover) {
  .p-service-achievement__tag-item a:hover {
    background: #0053A3;
    color: #ffffff;
    border: 1px solid #0053A3;
  }
}

/*----------------------------
    content
-----------------------------*/
.p-service-achievement__contents-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
  margin-bottom: 6.8rem;
  transition: 0.3s;
}
.p-service-achievement__contents-wrapper.js-open {
  margin-bottom: 4rem;
}
.p-service-achievement__contents-wrapper.more-wrapper {
  display: none;
}
.p-service-achievement__contents-wrapper.more-wrapper.js-open {
  display: grid;
}
@media screen and (max-width: 767px) {
  .p-service-achievement__contents-wrapper {
    display: block;
    margin-bottom: 4rem;
  }
  .p-service-achievement__contents-wrapper.more-wrapper {
    display: none;
  }
  .p-service-achievement__contents-wrapper.more-wrapper.js-open {
    display: block;
  }
}

.p-service-achievement__contents-item {
  background: #E8EEF3;
  padding: 4.5rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 840px) {
  .p-service-achievement__contents-item {
    padding: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .p-service-achievement__contents-item {
    padding: 2rem;
  }
  .p-service-achievement__contents-item:not(:last-of-type) {
    margin-bottom: 3rem;
  }
}

.p-service-achievement__contents-title {
  font-size: 2rem;
  line-height: 2.3;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .p-service-achievement__contents-title {
    font-size: 1.8rem;
    line-height: 1.6666666667;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
}

.p-service-achievement__contents-tagList {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  margin-bottom: 2.5rem;
}
.p-service-achievement__contents-tagList li a {
  display: inline-block;
  padding: 0.5rem 1rem;
  border: 1px solid #CCCCCC;
  background: #ffffff;
  border-radius: 5rem;
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-service-achievement__contents-tagList li a:hover {
    background: #0053A3;
    color: #ffffff;
    border: 1px solid #0053A3;
  }
}

.p-service-achievement__contents-img img {
  border-radius: 0.4rem;
  margin-bottom: 2.5rem;
  width: 100%;
  height: 27.5rem;
}
@media screen and (max-width: 767px) {
  .p-service-achievement__contents-img img {
    width: 100%;
    height: auto;
    aspect-ratio: 490/275;
    margin-bottom: 0;
  }
}

.p-service-achievement__contents-text {
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.1em;
  font-weight: 400;
}

.p-achievement__more-button,
.p-achievement__top-button {
  display: block;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-achievement__more-button,
  .p-achievement__top-button {
    margin-bottom: 6rem;
  }
}
.p-achievement__more-button i,
.p-achievement__top-button i {
  margin-left: 3rem;
  font-size: 1.5rem;
}
.p-achievement__more-button span,
.p-achievement__top-button span {
  display: inline-block;
  padding: 2.1rem 2.5rem 1.7rem 4.5rem;
  min-width: 28rem;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.15em;
  font-weight: 700;
  border-radius: 3rem;
  color: #ffffff;
  position: relative;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.p-achievement__more-button span::before,
.p-achievement__top-button span::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #0053A3, #3D7BB7);
  opacity: 1;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-achievement__more-button span:hover,
  .p-achievement__top-button span:hover {
    cursor: pointer;
    color: #0053A3;
    border: 1px solid #0053A3;
  }
  .p-achievement__more-button span:hover::before,
  .p-achievement__top-button span:hover::before {
    opacity: 0;
  }
}

.p-achievement__more-button.js-close {
  display: none;
}

.p-achievement__top-button {
  display: none;
}
.p-achievement__top-button.js-show {
  display: block;
}

/*----------------------------------
    Link
-----------------------------------*/
.p-service__main-wrapper {
  margin-top: 12rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .p-service__main-wrapper {
    margin-top: 5rem;
    margin-bottom: 5rem;
  }
}

.p-service__item {
  display: flex;
  background: url(../img/page-service/service-item-bg.png) no-repeat center center/100% 100%;
}
.p-service__item:not(:last-of-type) {
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .p-service__item {
    display: block;
    padding: 2.7rem 2rem 4.5rem;
  }
  .p-service__item:not(:last-of-type) {
    margin-bottom: 2.8rem;
  }
}

.p-service__item-textWrap {
  width: 47.41%;
  padding: 7rem 4.8rem 6.8rem 5rem;
}
.p-service__item-textWrap .title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 4rem;
}
.p-service__item-textWrap .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 6.8rem;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-service__item-textWrap {
    width: 100%;
    padding: 0;
  }
  .p-service__item-textWrap .title {
    font-size: 2.6rem;
    line-height: 1.1538461538;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 2.8rem;
  }
  .p-service__item-textWrap .text {
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 4.5rem;
  }
}

.p-service__item-img.img1 {
  width: 53.5rem;
  height: 53rem;
  margin-top: -6rem;
  margin-bottom: -4rem;
}
.p-service__item-img.img2 {
  width: 50.9rem;
  height: 44.5rem;
  margin-top: -2rem;
  margin-left: 4rem;
  margin-bottom: -4rem;
}
.p-service__item-img.img3 {
  width: 57rem;
  height: 45.5rem;
  margin-top: -4rem;
  margin-left: 6rem;
  margin-bottom: -4rem;
}
.p-service__item-img img {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-service__item-img {
    width: 100%;
    max-width: 30rem;
    margin: 0 auto;
    margin-top: -2rem;
    margin-bottom: 1.5rem;
  }
}

/*----------------------------------
    strength
-----------------------------------*/
.p-service__strength-wrapper {
  margin-top: 12rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-service__strength-wrapper {
    display: block;
    margin-top: 3rem;
  }
}

.p-service__strength-text-wrapper {
  width: 50.833%;
}
.p-service__strength-text-wrapper .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 6.8rem;
}
@media screen and (max-width: 767px) {
  .p-service__strength-text-wrapper {
    width: 100%;
  }
  .p-service__strength-text-wrapper .text {
    font-size: 1.5rem;
    line-height: 1.8666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 2.5rem;
  }
}

.p-service__strength-img {
  width: 38.5%;
  margin-top: -18rem;
}
.p-service__strength-img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-service__strength-img {
    width: 69.23%;
    margin: 0 auto;
    margin-bottom: 3rem;
  }
}

.p-service__features-wrapper {
  margin-top: 12rem;
}
@media screen and (max-width: 767px) {
  .p-service__features-wrapper {
    margin-top: 6rem;
  }
}

.p-service__features-item {
  width: 90rem;
  margin: auto;
  padding: 4rem 2.6rem 5rem 2.6rem;
  background: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
.p-service__features-item:not(:last-of-type) {
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .p-service__features-item {
    width: 100%;
    padding: 2rem;
    display: block;
  }
}
.p-service__features-item .text-wrapper {
  width: 44.4rem;
}
.p-service__features-item .text-wrapper .title {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 3.4rem;
}
@media screen and (min-width: 768px) {
  .p-service__features-item .text-wrapper .title {
    white-space: nowrap;
  }
}
.p-service__features-item .text-wrapper .text {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 4rem;
}
.p-service__features-item .text-wrapper .text.mb {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .p-service__features-item .text-wrapper {
    width: 100%;
  }
  .p-service__features-item .text-wrapper .title {
    text-align: center;
  }
  .p-service__features-item .text-wrapper .text {
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-service__features-item .img.features1 {
  width: 32rem;
}
.p-service__features-item .img.features2 {
  width: 25.2rem;
  margin-right: 4rem;
}
.p-service__features-item .img.features3 {
  width: 27.6rem;
  margin-right: 2rem;
  margin-right: 4rem;
}
.p-service__features-item .img.features4 {
  width: 21.6rem;
  margin-right: 6rem;
  margin-right: 4rem;
}
.p-service__features-item .img.features5 {
  width: 22.2rem;
  margin-right: 5rem;
  margin-right: 4rem;
}
.p-service__features-item .img.features6 {
  width: 25.2rem;
  margin-right: 2rem;
  margin-right: 4rem;
}
.p-service__features-item .img.features7 {
  width: 33.6rem;
  margin: -2rem 0;
  margin-right: 2rem;
  margin-right: 4rem;
}
.p-service__features-item .img.features8 {
  width: 29.7rem;
  margin-right: 3rem;
  margin-right: 4rem;
}
.p-service__features-item .img.features9 {
  width: 21.2rem;
  margin-right: 6rem;
  margin-right: 4rem;
}
.p-service__features-item .img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-service__features-item .img {
    margin: 0 auto;
    width: 100%;
    text-align: center;
  }
  .p-service__features-item .img img {
    width: 90%;
    max-width: 30rem;
  }
  .p-service__features-item .img.features2, .p-service__features-item .img.features4, .p-service__features-item .img.features5, .p-service__features-item .img.features6, .p-service__features-item .img.features7, .p-service__features-item .img.features8, .p-service__features-item .img.features9 {
    margin-right: auto;
  }
  .p-service__features-item .img.features6 {
    margin-top: -4rem;
  }
  .p-service__features-item .img.features7 {
    margin-top: -2rem;
    margin-bottom: 0;
  }
}

.p-cleaning-knowHow__headWrap {
  margin-top: 12rem;
  margin-bottom: 6.5rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__headWrap {
    margin-top: 6rem;
    margin-bottom: 4rem;
  }
}
.p-cleaning-knowHow__headWrap .text {
  width: 50%;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__headWrap .text {
    width: 100%;
  }
}
.p-cleaning-knowHow__headWrap .knowHow-icon {
  position: absolute;
  top: -5rem;
  right: 0;
  width: 50%;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__headWrap .knowHow-icon {
    display: none;
  }
}

/*----------------------------------
    詳細
-----------------------------------*/
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail {
    padding: 4rem 1rem;
  }
}

.p-cleaning-knowHow__detail-title {
  text-align: center;
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-title {
    margin-bottom: 4rem;
  }
}

.p-cleaning-knowHow__detail-item {
  width: 90rem;
  max-width: 100%;
  margin: auto;
  padding: 6rem 0;
  background: #ffffff;
}
.p-cleaning-knowHow__detail-item:first-of-type {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-item {
    width: 100%;
    padding: 0;
  }
  .p-cleaning-knowHow__detail-item:first-of-type {
    margin-bottom: 3rem;
  }
}
.p-cleaning-knowHow__detail-item .title {
  padding-left: 2rem;
  margin-bottom: 6rem;
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-item .title {
    margin-bottom: 3rem;
    font-size: 2.8rem;
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-cleaning-knowHow__detail-item .title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.8rem;
  height: 100%;
  background: #0053A3;
}
.p-cleaning-knowHow__detail-item .title::after {
  content: "";
  position: absolute;
  bottom: -3rem;
  left: 0;
  width: 100%;
  height: 0.1rem;
  border-bottom: 1px dashed #3D7BB7;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-item .title::after {
    bottom: -1.5rem;
  }
}
.p-cleaning-knowHow__detail-item .sub-title {
  font-size: 2rem;
  line-height: 1.6;
  letter-spacing: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-item .sub-title {
    font-size: 1.8rem;
    line-height: 1.7777777778;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-cleaning-knowHow__detail-item .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-cleaning-knowHow__detail-item .text:not(:last-of-type) {
  margin-bottom: 3rem;
}
.p-cleaning-knowHow__detail-item .img-wrapper {
  margin-top: 6.4rem;
  display: flex;
  justify-content: center;
  -moz-column-gap: 4.6rem;
       column-gap: 4.6rem;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-item .img-wrapper {
    display: block;
    margin-top: 4rem;
  }
}
.p-cleaning-knowHow__detail-item .img-item {
  text-align: center;
}
.p-cleaning-knowHow__detail-item .img-item img {
  width: 11.8rem;
}
.p-cleaning-knowHow__detail-item .img-item p {
  font-size: 1.6rem;
  line-height: 1.4375;
  letter-spacing: 0.1em;
  font-weight: 400;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-item .img-item img {
    width: 50%;
  }
  .p-cleaning-knowHow__detail-item .img-item p {
    margin-bottom: 2rem;
  }
}
.p-cleaning-knowHow__detail-item .atp-img {
  margin: auto;
  margin-top: 6rem;
  text-align: center;
}
.p-cleaning-knowHow__detail-item .atp-img img {
  width: 100%;
  max-width: 80rem;
}
@media screen and (max-width: 767px) {
  .p-cleaning-knowHow__detail-item .atp-img {
    margin-top: 2rem;
  }
}

/*----------------------------------
    cleaning
-----------------------------------*/
.p-cleaning-works__wrapper {
  margin-top: 11rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-cleaning-works__wrapper {
    margin-top: 4rem;
    display: block;
  }
}

.p-cleaning-works__text {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  position: relative;
  width: 48%;
  margin-right: 0;
}
.p-cleaning-works__text p {
  padding-left: 3rem;
  margin-bottom: 3.3rem;
}
@media screen and (max-width: 767px) {
  .p-cleaning-works__text p {
    padding-left: 0;
    margin-bottom: 2rem;
  }
}
.p-cleaning-works__text img {
  margin-left: 3rem;
  width: calc(100% - 3rem);
}
@media screen and (max-width: 767px) {
  .p-cleaning-works__text img {
    width: 100%;
    margin-left: 0;
  }
}
.p-cleaning-works__text .img-wrapper {
  display: flex;
  justify-content: start;
}
.p-cleaning-works__text .img-wrapper .facility-img {
  width: 80%;
}
@media screen and (max-width: 767px) {
  .p-cleaning-works__text .img-wrapper .facility-img {
    width: 100%;
  }
  .p-cleaning-works__text .img-wrapper .facility-img:first-of-type {
    margin-right: 2rem;
  }
}
.p-cleaning-works__text.ps {
  margin-top: 3rem;
}
@media screen and (max-width: 767px) {
  .p-cleaning-works__text {
    width: 100%;
  }
}

.p-cleaning-works__text h5 {
  color: #0053A3;
  font-size: 2rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-weight: 400;
  padding-left: 3rem;
  margin-bottom: 1rem;
  margin-top: 2.5rem;
  position: relative;
}
.p-cleaning-works__text h5::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 2rem;
  height: 2rem;
  background-image: url(../img/page-service/check-icon.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
}

/*----------------------------------
    facility
-----------------------------------*/
.p-facility-works__wrapper {
  margin-top: 11rem;
  display: flex;
  justify-content: space-between;
}
.p-facility-works__wrapper .title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 2.5rem;
}
.p-facility-works__wrapper .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-facility-works__wrapper img {
  width: 31.2rem;
}
@media screen and (max-width: 767px) {
  .p-facility-works__wrapper {
    margin-top: 6rem;
    display: block;
    text-align: center;
  }
  .p-facility-works__wrapper .title {
    font-size: 2.4rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
  .p-facility-works__wrapper .text {
    margin-bottom: 3rem;
  }
  .p-facility-works__wrapper img {
    width: 20rem;
  }
}

/*----------------------------------
    security
-----------------------------------*/
.p-security-works__wrapper {
  margin-top: 12rem;
}
@media screen and (max-width: 767px) {
  .p-security-works__wrapper {
    margin-top: 6rem;
  }
}

.p-security-works__item {
  display: flex;
  justify-content: space-between;
}
.p-security-works__item:not(:last-of-type) {
  margin-bottom: 11rem;
}
.p-security-works__item .text-wrapper {
  width: 62rem;
}
.p-security-works__item .text-wrapper .title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 4rem;
}
.p-security-works__item .text-wrapper .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-security-works__item img {
  width: 48.6rem;
}
@media screen and (max-width: 767px) {
  .p-security-works__item {
    display: block;
  }
  .p-security-works__item:not(:last-of-type) {
    margin-bottom: 3rem;
  }
  .p-security-works__item .text-wrapper {
    text-align: center;
    width: 100%;
  }
  .p-security-works__item .text-wrapper .title {
    font-size: 2.8rem;
    line-height: 1.4285714286;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
  .p-security-works__item .text-wrapper .text {
    text-align: left;
  }
  .p-security-works__item img {
    width: 80%;
    margin: auto;
    margin-bottom: 2rem;
  }
}

/*----------------------------------
    エコチューニング
-----------------------------------*/
.p-service-facility__eco {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 15rem;
}
@media screen and (max-width: 767px) {
  .p-service-facility__eco {
    display: block;
    margin-bottom: 6rem;
  }
}

.p-service-facility__eco-text-wrapper {
  width: 61rem;
}
.p-service-facility__eco-text-wrapper .title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 4rem;
}
.p-service-facility__eco-text-wrapper .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-service-facility__eco-text-wrapper {
    width: 100%;
    margin-bottom: 4rem;
  }
  .p-service-facility__eco-text-wrapper .title {
    font-size: 2.8rem;
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 3rem;
  }
}

.p-service-facility__eco-img {
  width: 51.4rem;
}
.p-service-facility__eco-img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-service-facility__eco-img {
    width: 100%;
  }
}

/*----------------------------------
    デジタル技術の活用
-----------------------------------*/
.p-service-facility__digital .title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 3rem;
}
.p-service-facility__digital .title .title {
  font-size: 2.8rem;
  line-height: 1.4285714286;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-service-facility__digital .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 5rem;
}
.p-service-facility__digital .img {
  width: 105.7rem;
  margin: 0 auto;
}
.p-service-facility__digital .img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-service-facility__digital .img {
    width: 100%;
  }
}

.p-service-option__item {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 13rem;
}
@media screen and (max-width: 767px) {
  .p-service-option__item {
    display: block;
    padding-top: 6rem;
  }
}

.p-service-option__text-wrapper {
  width: 55rem;
  margin-right: 10rem;
}
@media screen and (max-width: 767px) {
  .p-service-option__text-wrapper {
    width: 100%;
    margin-right: 0;
  }
}
.p-service-option__text-wrapper .title {
  font-size: 4rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 4rem;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-service-option__text-wrapper .title {
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 767px) and (max-width: 400px) and (max-width: 767px) {
  .p-service-option__text-wrapper .title {
    font-size: calc((28 / 391) * 100vw);
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}
.p-service-option__text-wrapper .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .p-service-option__text-wrapper .text {
    margin-bottom: 4rem;
  }
}
.p-service-option__text-wrapper .list-title {
  display: flex;
  align-items: center;
}
.p-service-option__text-wrapper .list-title::after {
  flex-grow: 1;
  content: "";
  height: 0.1rem;
  background: #CCCCCC;
  margin-left: 1.5rem;
}
.p-service-option__text-wrapper .list-item {
  padding: 2rem 0 3rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  border-bottom: 1px solid #CCCCCC;
}

.p-service-option__img {
  width: 40rem;
  margin-top: 10.8rem;
}
.p-service-option__img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-service-option__img {
    margin-top: 0rem;
    width: 100%;
    text-align: center;
    margin-bottom: 2rem;
  }
  .p-service-option__img img {
    max-width: 40rem;
  }
}

.p-service-footer__text-head {
  text-align: center;
  margin-top: 4.8rem;
  margin-bottom: 3.6rem;
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .p-service-footer__text-head {
    margin: 3rem 0 2rem;
  }
}

.p-service-footer__text-lead {
  text-align: center;
  margin-bottom: 5rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-service-footer__text-lead {
    text-align: left;
    margin-bottom: 3rem;
  }
}

/*----------------------------------
    大切にしていること
-----------------------------------*/
.p-recruit-important__wrapper {
  display: flex;
  justify-content: space-between;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  margin-top: 12rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-important__wrapper {
    display: block;
    margin-top: 6rem;
  }
}

.p-recruit-important__item {
  flex: 1;
  background: #ffffff;
  padding: 4rem;
  padding-bottom: 5rem;
}
.p-recruit-important__item .title {
  text-align: center;
  font-size: 2.6rem;
  line-height: 1.3846153846;
  letter-spacing: 0.15em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 3.4rem;
}
.p-recruit-important__item .title.lh {
  font-size: 2.6rem;
  line-height: 2.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
}
.p-recruit-important__item .img-wrapper {
  text-align: center;
  height: 22.5rem;
  margin-bottom: 3rem;
}
.p-recruit-important__item .img-wrapper .icon1 {
  width: 32rem;
}
.p-recruit-important__item .img-wrapper .icon2 {
  width: 31.2rem;
}
.p-recruit-important__item .img-wrapper .icon3 {
  margin-top: 2rem;
  width: 24.2rem;
}
.p-recruit-important__item .text {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-recruit-important__item {
    padding: 4rem 2rem;
  }
  .p-recruit-important__item .title {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 1.5rem;
  }
  .p-recruit-important__item.lh {
    font-size: 2.4rem;
    line-height: 2.6666666667;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
  .p-recruit-important__item:not(:last-of-type) {
    margin-bottom: 3rem;
  }
}

/*----------------------------------
    福利厚生
-----------------------------------*/
.p-recruit-welfare__contents1 {
  margin-top: 12rem;
  margin-bottom: 4rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents1 {
    display: block;
    margin-top: 6rem;
  }
}

.p-recruit-welfare__contents2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  row-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents2 {
    display: block;
  }
}

.p-recruit-welfare__contents-item {
  background: #E8EEF3;
  padding: 4rem;
  padding-bottom: 2rem;
}
.p-recruit-welfare__contents-item.contents2 {
  padding-top: 4.5rem;
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item {
    text-align: center;
    padding: 4rem 2rem;
  }
  .p-recruit-welfare__contents-item.contents2 {
    padding: 2rem;
    padding-bottom: 2rem;
  }
  .p-recruit-welfare__contents-item.contents2 .title {
    margin-bottom: 0;
  }
  .p-recruit-welfare__contents-item:not(:last-of-type) {
    margin-bottom: 3rem;
  }
}
.p-recruit-welfare__contents-item .title {
  font-size: 2.6rem;
  line-height: 1.3846153846;
  letter-spacing: 0.15em;
  font-weight: 600;
  padding-left: 2.5rem;
  margin-bottom: 3.2rem;
  white-space: nowrap;
  position: relative;
}
.p-recruit-welfare__contents-item .title::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.8rem;
  height: 100%;
  background: #0053A3;
}
.p-recruit-welfare__contents-item .title .bottom {
  position: absolute;
  left: 2.5rem;
  top: calc(100% + 0.4rem);
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .title .bottom {
    position: relative;
    left: 0;
  }
}
.p-recruit-welfare__contents-item .title span {
  font-size: 1.2rem;
  line-height: 1.8333333333;
  letter-spacing: 0.15em;
  font-weight: 600;
}
.p-recruit-welfare__contents-item .title .br {
  position: absolute;
  top: 100%;
  left: 2rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .title {
    text-align: left;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    font-weight: 600;
  }
}
.p-recruit-welfare__contents-item .wrapper {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .wrapper {
    display: block;
    text-align: left;
  }
}
.p-recruit-welfare__contents-item .text {
  font-size: 1.5rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 400;
  width: 29.3rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .text {
    width: 100%;
  }
}
.p-recruit-welfare__contents-item .welfare1 {
  width: 18rem;
  margin-top: -10rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .welfare1 {
    width: 80%;
    max-width: 30rem;
    margin-top: -4rem;
  }
}
.p-recruit-welfare__contents-item .welfare2 {
  width: 18.7rem;
  margin-top: -4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .welfare2 {
    width: 80%;
    max-width: 30rem;
    margin-top: -2rem;
  }
}
.p-recruit-welfare__contents-item .welfare3 {
  width: 19.6rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .welfare3 {
    width: 80%;
    max-width: 32rem;
    margin-top: -2rem;
  }
}
.p-recruit-welfare__contents-item .welfare4 {
  width: 20.6rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-welfare__contents-item .welfare4 {
    width: 80%;
    max-width: 30rem;
  }
}
.p-recruit-welfare__contents-item.bg {
  background: #ffffff;
}
.p-recruit-welfare__contents-item.base {
  background: #ffffff;
}

/*----------------------------------
    swiperを囲むもの
-----------------------------------*/
@media screen and (max-width: 767px) {
  .p-recruit__3human-wrapper {
    margin-top: 4rem;
  }
  .p-recruit__3human-wrapper .swiper-button-prev,
  .p-recruit__3human-wrapper .swiper-button-next {
    background: #ffffff;
  }
  .p-recruit__3human-wrapper .swiper-button-prev::after,
  .p-recruit__3human-wrapper .swiper-button-next::after {
    color: #0053A3;
  }
  .p-recruit__3human-wrapper .p-top-recruit__image-item {
    text-align: center;
  }
  .p-recruit__3human-wrapper .p-top-recruit__image-item span {
    display: inline-block;
    -moz-text-align-last: left;
         text-align-last: left;
    position: relative;
  }
  .p-recruit__3human-wrapper .p-top-recruit__image-item span::before {
    content: "";
    position: absolute;
    top: 0.4rem;
    left: -2rem;
    width: 1.4rem;
    height: auto;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1px solid #ffffff;
    transition: 0.3s;
  }
  .p-recruit__3human-wrapper .p-top-recruit__image-item span::after {
    content: "";
    position: absolute;
    top: 0.85rem;
    left: -1.7rem;
    width: 0.5rem;
    height: auto;
    aspect-ratio: 1;
    border-right: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
    transform: rotate(-45deg);
    transition: 0.3s;
  }
}

/*----------------------------------
    募集要項
-----------------------------------*/
.p-recruit-requirement__wrapper {
  margin-top: 12rem;
  margin-bottom: 9.3rem;
  display: flex;
  justify-content: space-between;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-requirement__wrapper {
    margin: 6rem 0;
    display: block;
  }
}

.p-recruit-requirement__item {
  flex: 1;
  background: #E8EEF3;
  padding: 4rem;
  padding-bottom: 2rem;
  display: flex;
  justify-content: space-between;
}
.p-recruit-requirement__item .text-wrapper {
  width: 35rem;
}
.p-recruit-requirement__item .title {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-bottom: 3rem;
}
.p-recruit-requirement__item .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 4.4rem;
}
.p-recruit-requirement__item .icon1 {
  width: 6.5rem;
}
.p-recruit-requirement__item .icon2 {
  width: 8.5rem;
  height: auto;
  aspect-ratio: 80/220;
}
@media screen and (max-width: 767px) {
  .p-recruit-requirement__item {
    display: block;
    padding: 4rem 2rem;
  }
  .p-recruit-requirement__item:first-of-type {
    margin-bottom: 3rem;
  }
  .p-recruit-requirement__item .text-wrapper {
    width: 100%;
  }
  .p-recruit-requirement__item .title {
    font-size: 2rem;
    line-height: 1.8;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
  .p-recruit-requirement__item .text {
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 2rem;
  }
  .p-recruit-requirement__item img {
    display: none;
  }
}

/*----------------------------------
    インタビュー　一覧ページ
-----------------------------------*/
.p-recruit-interview__item {
	background: #E8EEF3;
	border: 1rem solid #0053A3;
	padding-top: 5.8rem;
	padding-left: 5rem;
	color: #0053A3;
	display: flex;
	justify-content: space-between;
	position: relative;
}
.p-recruit-interview__item:not(:last-of-type) {
  margin-bottom: 10rem;
}
.p-recruit-interview__item .text-wrapper {
  width: 65rem;
}
.p-recruit-interview__item .title {
  font-size: 3.2rem;
  line-height: 0.9375;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-bottom: 4rem;
  white-space: nowrap;
}
.p-recruit-interview__item .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 2rem;
}
.p-recruit-interview__item .name {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin-bottom: 3rem;
}
.p-recruit-interview__item img {
  position: relative;
  z-index: 2;
}
.p-recruit-interview__item .interview-human1 {
  width: 28rem;
  margin-top: -3rem;
}
.p-recruit-interview__item .interview-human2 {
  width: 30rem;
  margin-top: -6rem;
}
.p-recruit-interview__item .interview-human3 {
  width: 30rem;
  margin-top: -4rem;
}
.p-recruit-interview__item .interview-human4 {
	width: 35.8rem;
	right: 2.4rem;
	margin-top: -4rem;
}
.p-recruit-interview__item .new {
	background-color: #FA5050;
	color: #fff;
	position: absolute;
	transform: rotate(-45deg);
	clip-path: polygon(27.5% 0%, 72.5% 0%, 100% 100%, 0% 100%);
	top: 0.7rem;
	left: -4.6rem;
	font-size: 1.6rem;
	padding: .5rem 5rem;
	font-weight: 800;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__item {
    padding: 4rem 2rem;
    display: block;
  }
  .p-recruit-interview__item:not(:last-of-type) {
    margin-bottom: 6rem;
  }
  .p-recruit-interview__item .text-wrapper {
    width: 100%;
    text-align: center;
  }
  .p-recruit-interview__item .title {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 2rem;
    white-space: normal;
  }
  .p-recruit-interview__item .text {
    text-align: left;
    font-size: 1.6rem;
    line-height: 1.875;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 2rem;
  }
  .p-recruit-interview__item .name {
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin-bottom: 3rem;
  }
  .p-recruit-interview__item .interview-human1 {
    width: 20rem;
    margin-top: 0rem;
  }
  .p-recruit-interview__item .interview-human2 {
    width: 20rem;
    margin-top: -3rem;
  }
  .p-recruit-interview__item .interview-human3 {
    width: 20rem;
    margin-top: -2rem;
  }
	.p-recruit-interview__item .interview-human4 {
		width: 30rem;
		margin-top: -2rem;
		left: 0;
	}
}

/*----------------------------------
    インタビュー詳細ページ
-----------------------------------*/
.p-recruit-interview__head-title {
  font-size: 6rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 7.7rem;
}
.p-recruit-interview__head-title span {
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__head-title {
    font-size: 2.8rem;
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 4rem;
  }
}

.p-recruit-interview__head-profile {
  width: 100%;
  display: flex;
}
.p-recruit-interview__head-profile img {
  width: 76.4rem;
}
.p-recruit-interview__head-profile .profile-flame {
  width: 43.6rem;
  background: #0053A3;
}
.p-recruit-interview__head-profile .profile-contents {
  width: 33.6rem;
  height: 32.2rem;
  margin: 5rem;
  background: #ffffff;
  padding: 4rem 3.5rem;
}
.p-recruit-interview__head-profile .profile-contents.contents02 {
	padding: 3.5rem;
}
.p-recruit-interview__head-profile .profile-contents.contents02 .head {
	line-height: 1.2;
}
@media screen and (max-width: 1260px) {
  .p-recruit-interview__head-profile {
    justify-content: center;
  }
  .p-recruit-interview__head-profile img {
    width: 73.4rem;
  }
  .p-recruit-interview__head-profile .profile-flame {
    width: 40.6rem;
  }
  .p-recruit-interview__head-profile .profile-contents {
    width: 30.6rem;
    padding: 4rem 2rem;
  }
	.p-recruit-interview__head-profile .profile-contents.contents02 {
		padding: 3rem 2rem;
	}
}
.p-recruit-interview__head-profile .head {
  font-size: 2rem;
  line-height: 2.3;
  letter-spacing: 0.15em;
  font-weight: 600;
  padding-bottom: 2rem;
  border-bottom: 1px solid #707070;
  margin-bottom: 3rem;
}
.p-recruit-interview__head-profile .text {
  font-size: 1.6rem;
  line-height: 2.5;
  letter-spacing: 0.1em;
  font-weight: 600;
}
.p-recruit-interview__head-profile .text span {
  font-size: 1.6rem;
  line-height: 2.5;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #0053A3;
}
.p-recruit-interview__head-profile .text02,
.p-recruit-interview__head-profile .text03 {
	line-height: 1.75;
}
.p-recruit-interview__head-profile .mb {
	margin-bottom: 1rem;
}
.p-recruit-interview__head-profile .small {
	font-size: 1.3rem;
	margin-left: 2rem;
}
.p-recruit-interview__head-profile .blue {
	color: #0053A3;
}
.p-recruit-interview__head-profile .bold {
	font-weight: 800;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__head-profile {
    display: block;
  }
  .p-recruit-interview__head-profile img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-recruit-interview__head-profile .profile-flame {
    margin-top: -1rem;
    width: 100%;
    height: 100%;
    padding: 3rem 0;
  }
	.p-recruit-interview__head-profile .text02,
	.p-recruit-interview__head-profile .text03 {
		font-size: 1.4rem;
	}
	.p-recruit-interview__head-profile .small {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 767px) and (max-width: 400px) {
  .p-recruit-interview__head-profile .profile-flame {
    padding: 1.5rem 0;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__head-profile .profile-contents {
    width: calc(100% - 6rem);
    height: calc(100% - 6rem);
    margin: auto;
    padding: 3rem;
  }
}
@media screen and (max-width: 767px) and (max-width: 400px) {
	.p-recruit-interview__head-profile .profile-contents {
		width: calc(100% - 3rem);
		padding: 1.5rem;
	}
	.p-recruit-interview__head-profile .profile-contents.contents02 {
		padding: 1.5rem;
	}
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__head-profile .head {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.15em;
    font-weight: 600;
    padding-bottom: 1rem;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__head-profile .text {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
  .p-recruit-interview__head-profile .text span {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}

/*----------------------------------
    インタビュー詳細　記事　パーツ
-----------------------------------*/
.p-recruit-interview__section-title {
  font-size: 3.2rem;
  line-height: 1.25;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 8rem;
  position: relative;
  padding-left: 3rem;
}
.p-recruit-interview__section-title span {
  display: inline-block;
  font-family: "Rubik", sans-serif;
  color: #0053A3;
  font-size: 2rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 0.8rem;
}
.p-recruit-interview__section-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1.2rem;
  height: 85%;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__section-title {
    font-size: 2.4rem;
    line-height: 1.25;
    letter-spacing: 0.1em;
    font-weight: 600;
    padding-left: 1.5rem;
    margin-bottom: 4rem;
  }
  .p-recruit-interview__section-title::after {
    width: 0.8rem;
  }
  .p-recruit-interview__section-title span {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

.p-recruit-interview__main-item {
  padding: 7rem 8rem;
  border: 1px solid #CCCCCC;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__main-item {
    padding: 4rem 2rem;
  }
}
.p-recruit-interview__main-item:not(:last-of-type) {
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__main-item:not(:last-of-type) {
    margin-bottom: 6rem;
  }
}
.p-recruit-interview__main-item.icon {
  position: relative;
}
.p-recruit-interview__main-item.icon::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -7rem;
  right: 0.5rem;
  width: 14.2rem;
  height: 14rem;
  background-image: url(../img/page-recruit/interview-main-top-icon.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__main-item.icon::after {
    display: none;
  }
}
.p-recruit-interview__main-item .question {
  padding-left: 5.6rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 3.6rem;
  position: relative;
}
.p-recruit-interview__main-item .question::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 4.8rem;
	height: 0.2rem;
/* 	background: #333333; */
	background: #0053A3;
}
.p-recruit-interview__main-item .question.mt {
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__main-item .question {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 2rem;
    padding-left: 0;
  }
  .p-recruit-interview__main-item .question::after {
    display: none;
  }
}
.p-recruit-interview__main-item .img {
  width: 72rem;
  margin: 0 auto;
}
.p-recruit-interview__main-item .img img {
  width: 100%;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__main-item .img {
    width: 100%;
  }
  .p-recruit-interview__main-item .img img {
    margin-top: 2rem;
  }
}
.p-recruit-interview__main-item .message {
  font-size: 1.8rem;
  line-height: 2.7777777778;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #0053A3;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__main-item .message {
    text-align: left;
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-interview__main-item .text {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

/*----------------------------------
    募集要項
-----------------------------------*/
.p-recruit-graduate__requirement-table {
  display: block;
  width: 100%;
  margin-top: 6rem;
}
.p-recruit-graduate__requirement-table tbody {
  display: block;
  width: 100%;
}
.p-recruit-graduate__requirement-table tr {
  width: 100%;
  display: block;
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid #CCCCCC;
  text-align: left;
}
.p-recruit-graduate__requirement-table tr:first-of-type {
  border-top: 1px solid #CCCCCC;
}
.p-recruit-graduate__requirement-table th {
  width: 24rem;
  padding-left: 4rem;
  padding-right: 6rem;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #0053A3;
  vertical-align: baseline;
}
.p-recruit-graduate__requirement-table td {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 600;
  padding-right: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-graduate__requirement-table {
    margin-top: 4rem;
  }
  .p-recruit-graduate__requirement-table th {
    display: block;
    width: 100%;
    padding-left: 2rem;
    padding-right: 1rem;
  }
  .p-recruit-graduate__requirement-table td {
    display: block;
    width: 100%;
    padding-left: 2rem;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}

/*----------------------------------
    エントリー
-----------------------------------*/
.p-recruit-graduate__entry-text {
  margin-top: 12rem;
  margin-bottom: 6rem;
  font-size: 1.6rem;
  line-height: 2.5;
  letter-spacing: 0.15em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-recruit-graduate__entry-text {
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: 0.15em;
    font-weight: 400;
    margin: 4rem 0 6rem;
  }
}

.p-recruit-graduate__entry-img {
  display: flex;
  justify-content: space-between;
  align-items: center;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
  margin-bottom: 6rem;
}
.p-recruit-graduate__entry-img a {
  display: block;
  transition: 0.3s;
}
@media (hover: hover) {
  .p-recruit-graduate__entry-img a:hover {
    transform: translateY(6px);
  }
}
.p-recruit-graduate__entry-img img {
  width: 58rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-graduate__entry-img {
    display: block;
    margin-bottom: 4rem;
    text-align: center;
  }
  .p-recruit-graduate__entry-img img {
    width: 100%;
    max-width: 40rem;
  }
}

.p-recruit-career__wrapper {
  margin-top: 6.8rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-career__wrapper {
    margin-top: 4rem;
  }
}

.p-recruit-career__item {
  background: #E8EEF3;
  padding: 6rem 5rem;
  border-radius: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-recruit-career__item:not(:last-of-type) {
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-career__item {
    display: block;
    padding: 4rem 2rem;
  }
  .p-recruit-career__item:not(:last-of-type) {
    margin-bottom: 3rem;
  }
}
.p-recruit-career__item .text-wrapper {
  width: 70rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-career__item .text-wrapper {
    width: 100%;
  }
}
.p-recruit-career__item .title {
  font-size: 2.8rem;
  line-height: 1.4642857143;
  letter-spacing: 0.15em;
  font-weight: 700;
  margin-bottom: 3.2rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-career__item .title {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
}
.p-recruit-career__item .tag-wrapper {
  display: flex;
  justify-content: start;
  align-items: center;
  -moz-column-gap: 0.6rem;
       column-gap: 0.6rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-recruit-career__item .tag-wrapper {
    margin-bottom: 2rem;
    flex-wrap: wrap;
  }
}
.p-recruit-career__item .tag-item {
  list-style: none;
}
.p-recruit-career__item .tag-item a {
  display: inline-block;
  padding: 0.6rem 2rem;
  background: #ffffff;
  border: 1px solid #707070;
  border-radius: 0.5rem;
  pointer-events: none;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 700;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-recruit-career__item .tag-item a {
    margin-bottom: 1rem;
  }
}
@media (hover: hover) {
  .p-recruit-career__item .tag-item a:hover {
    cursor: pointer;
    color: #ffffff;
    background: #0053A3;
    border-color: #0053A3;
  }
}
.p-recruit-career__item .icatch {
  width: 35rem;
}
.p-recruit-career__item .icatch img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-recruit-career__item .icatch {
    width: 100%;
    margin-bottom: 2rem;
  }
}

.p-contact-form__head-text {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-contact-form__head-text {
    text-align: left;
  }
}

.p-contact-form {
  width: 100%;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .p-contact-form {
    margin-top: 3rem;
  }
}
.p-contact-form tr {
  display: flex;
  width: 100%;
  padding: 3rem 0;
  border-bottom: 1px solid #CCCCCC;
}
.p-contact-form tr.continue-row {
  padding-bottom: 0;
  border-bottom: none;
}
.p-contact-form tr:first-of-type {
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  .p-contact-form tr {
    display: block;
    padding: 2rem 0;
  }
}
.p-contact-form th {
  text-align: left;
  vertical-align: baseline;
  width: 27rem;
  padding-left: 2rem;
  padding-right: 5rem;
}
@media screen and (max-width: 767px) {
  .p-contact-form th {
    display: block;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    color: #0053A3;
  }
}
.p-contact-form td {
  width: 54.5rem;
  padding-right: 2rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .p-contact-form td {
    display: block;
    width: 100%;
    padding-right: 0;
  }
}
.p-contact-form input[type=text],
.p-contact-form input[type=email],
.p-contact-form input[type=tel] {
  width: 100%;
  padding: 1.3rem 0;
  padding-left: 3rem;
  outline: none;
  border: 1.5px solid #CCCCCC;
  border-radius: 4px;
}
.p-contact-form input[type=text]::-moz-placeholder, .p-contact-form input[type=email]::-moz-placeholder, .p-contact-form input[type=tel]::-moz-placeholder {
  font-family: "Hiragino Kaku Gothic StdN", sans-serif;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.15em;
  font-weight: 400;
  color: #CCCCCC;
}
.p-contact-form input[type=text]::placeholder,
.p-contact-form input[type=email]::placeholder,
.p-contact-form input[type=tel]::placeholder {
  font-family: "Hiragino Kaku Gothic StdN", sans-serif;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  letter-spacing: 0.15em;
  font-weight: 400;
  color: #CCCCCC;
}
.p-contact-form input[type=text]:focus,
.p-contact-form input[type=email]:focus,
.p-contact-form input[type=tel]:focus {
  border: 1.5px solid #0053A3;
}
@media screen and (max-width: 767px) {
  .p-contact-form input[type=text],
  .p-contact-form input[type=email],
  .p-contact-form input[type=tel] {
    padding: 1rem;
  }
}
.p-contact-form textarea {
  width: 100%;
  height: 15rem;
  resize: vertical;
  outline: none;
  border: 1px solid #CCCCCC;
  border-radius: 4px;
}

.p-contact-form__checkbox-wrapper, .p-contact-form__privacyPolicy {
  display: flex;
  justify-content: space-between;
}
.p-contact-form__checkbox-wrapper input[type=checkbox], .p-contact-form__privacyPolicy input[type=checkbox] {
  display: none;
}
.p-contact-form__checkbox-wrapper .horizontal-item, .p-contact-form__privacyPolicy .horizontal-item {
  width: 25rem;
  margin-left: 0 !important;
}
@media screen and (max-width: 767px) {
  .p-contact-form__checkbox-wrapper .horizontal-item, .p-contact-form__privacyPolicy .horizontal-item {
    display: inline-block;
    width: auto;
    margin-right: 3rem;
  }
}
.p-contact-form__checkbox-wrapper label, .p-contact-form__privacyPolicy label {
  padding-left: 2rem;
  position: relative;
}
@media (hover: hover) {
  .p-contact-form__checkbox-wrapper label:hover, .p-contact-form__privacyPolicy label:hover {
    cursor: pointer;
  }
}
.p-contact-form__checkbox-wrapper label .mwform-checkbox-field-text::before, .p-contact-form__privacyPolicy label .mwform-checkbox-field-text::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1.4rem;
  height: 1.4rem;
  border: 1px solid #CCCCCC;
}
.p-contact-form__checkbox-wrapper label .mwform-checkbox-field-text::after, .p-contact-form__privacyPolicy label .mwform-checkbox-field-text::after {
  content: "";
  position: absolute;
  top: 0.2rem;
  left: 0.5rem;
  width: 0.4rem;
  height: 0.8rem;
  border-bottom: 1.5px solid #ffffff;
  border-right: 1.5px solid #ffffff;
  transform: rotate(45deg);
  opacity: 0;
}
.p-contact-form__checkbox-wrapper input[type=checkbox]:checked + .mwform-checkbox-field-text::before, .p-contact-form__privacyPolicy input[type=checkbox]:checked + .mwform-checkbox-field-text::before {
  background: #0053A3;
  border: 1px solid #0053A3;
}
.p-contact-form__checkbox-wrapper input[type=checkbox]:checked + .mwform-checkbox-field-text::after, .p-contact-form__privacyPolicy input[type=checkbox]:checked + .mwform-checkbox-field-text::after {
  opacity: 1;
}

.p-contact-form__privacyPolicy {
  justify-content: center;
}
.p-contact-form__privacyPolicy .horizontal-item {
  width: 100%;
}

.p-contact-form__privacyPolicy {
  margin-top: 3rem;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-bottom: 6rem;
}

/*----------------------------------
    ボタン
-----------------------------------*/
.p-contact-form__confirm-button {
  text-align: center;
}
.p-contact-form__confirm-button .wpcf7-submit, .p-contact-form__confirm-button .wpcf7-previous {
  display: inline-block;
  text-align: center;
  background: linear-gradient(to right, #0053A3, #3D7BB7);
  padding: 2.1rem 6.4rem 1.7rem 6.4rem;
  min-width: 28rem;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.15em;
  font-weight: 700;
  border-radius: 3rem;
  position: relative;
  color: #ffffff;
  overflow: hidden;
  border: none;
}
@media (hover: hover) {
  .p-contact-form__confirm-button .wpcf7-submit:hover, .p-contact-form__confirm-button .wpcf7-previous:hover {
    cursor: pointer;
  }
}
.p-contact-form__confirm-button .wpcf7-submit:disabled, .p-contact-form__confirm-button .wpcf7-previous:disabled {
  background: transparent;
  border: 1px solid #0053A3;
  color: #0053A3;
  opacity: 0.5;
}
.p-contact-form__confirm-button .wpcf7-spinner {
  display: none;
}
.p-contact-form__confirm-button .wpcf7-previous {
  display: block;
  background: transparent;
  border: 1px solid #0053A3;
  margin-right: 7rem;
  color: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-contact-form__confirm-button .wpcf7-previous {
    margin: 0 auto;
    margin-bottom: 3rem;
  }
}

.p-contact-form__confirm-button-wrapper {
  margin-top: 6rem;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .p-contact-form__confirm-button-wrapper {
    display: block;
  }
}

/*----------------------------------
    完了ページ
-----------------------------------*/
.p-contact-success__title {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 600;
  color: #0053A3;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  .p-contact-success__title {
    font-size: 2rem;
    line-height: 2;
    letter-spacing: 0.15em;
    font-weight: 600;
  }
}

.p-contact-success__text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 300;
}
@media screen and (max-width: 767px) {
  .p-contact-success__text {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 300;
  }
}

.p-privacy-policy__title {
  text-align: center;
  font-size: 3.4rem;
  line-height: 1.7058823529;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__title {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 4rem;
  }
}

.p-privacy-policy__contents {
  padding: 5rem;
  padding-bottom: 5.5rem;
  border: 1px solid #CCCCCC;
}
.p-privacy-policy__contents:first-of-type {
  margin-bottom: 15.4rem;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__contents {
    padding: 2rem;
  }
  .p-privacy-policy__contents:first-of-type {
    margin-bottom: 6rem;
  }
}
.p-privacy-policy__contents .text {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.p-privacy-policy__contents .text.mb {
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__contents .text {
    font-size: 1.4rem;
    line-height: 1.8571428571;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-privacy-policy__contents .subtitle {
  margin-top: 4.5rem;
  margin-bottom: 2.5rem;
  font-size: 2rem;
  line-height: 2.3;
  letter-spacing: 0.15em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__contents .subtitle {
    font-size: 1.8rem;
    line-height: 1.7777777778;
    letter-spacing: 0.15em;
    font-weight: 700;
  }
}

.p-privacy-policy__table {
  width: 100%;
  margin-top: 3.8rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__table {
    margin: 1rem 0 2rem;
  }
}
.p-privacy-policy__table tr {
  display: inline-block;
  width: 100%;
  padding: 1.6rem 3rem 2rem;
  border-bottom: 1px solid #CCCCCC;
  vertical-align: baseline;
}
.p-privacy-policy__table tr:first-of-type {
  border-top: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__table tr {
    padding: 1rem 0;
    display: block;
  }
  .p-privacy-policy__table tr:first-of-type {
    border-top: none;
  }
}
.p-privacy-policy__table th {
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__table th {
    display: none;
  }
}
.p-privacy-policy__table td {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__table td {
    display: block;
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.8571428571;
    letter-spacing: 0.1em;
    font-weight: 400;
  }
}
.p-privacy-policy__table .column1 {
  width: 26rem;
}
@media screen and (max-width: 767px) {
  .p-privacy-policy__table .column1 {
    width: 100%;
  }
}

.p-under-information__contents {
  width: 100%;
  max-width: 90rem;
  margin: 0 auto;
}

.p-under-information__contents {
  margin-top: 12rem;
  margin-bottom: 7rem;
  padding: 4.8rem 4.5rem 7.5rem 5.5rem;
  border: 1px solid #0053A3;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents {
    margin: 6rem 0;
    padding: 0;
    border: none;
  }
}

.p-under-information__contents-title {
  font-size: 2.6rem;
  line-height: 1.7692307692;
  letter-spacing: 0.15em;
  font-weight: 600;
  color: #0053A3;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents-title {
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    font-weight: 600;
    margin-bottom: 2rem;
  }
}

.p-under-information__contents-meta {
  display: flex;
  align-items: center;
  margin-bottom: 2.8rem;
}
.p-under-information__contents-meta time {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.1em;
  font-weight: 700;
  margin-right: 1.8rem;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents-meta time {
    font-size: 1.2rem;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-right: 1rem;
  }
}

.p-under-information__contents-category {
  display: flex;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.p-under-information__contents-category p {
  text-align: center;
  padding: 0.6rem 2rem;
  font-size: 1.2rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #0053A3;
  border: 1px solid #0053A3;
  border-radius: 0.5rem;
}
.p-under-information__contents-category p.new {
  background: #FA5050;
  color: #ffffff;
  border: 1px solid #FA5050;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents-category {
    padding: 0.4rem 0.8rem;
    font-size: 1rem;
    line-height: 2;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
}

.p-under-information__contents-text p {
  font-size: 1.6rem;
  line-height: 1.875;
  letter-spacing: 0.1em;
  font-weight: 300;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents-text p {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.1em;
    font-weight: 300;
  }
}
.p-under-information__contents-text h2 {
  font-size: 2.4rem;
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
  font-weight: 600;
  padding-left: 2rem;
  margin-bottom: 2rem;
  position: relative;
}
.p-under-information__contents-text h2::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.8rem;
  height: 100%;
  background: #333333;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents-text h2 {
    font-size: 2rem;
    line-height: 1.8;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
.p-under-information__contents-text h3 {
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #0053A3;
  padding-left: 2rem;
  margin-bottom: 2rem;
  position: relative;
}
.p-under-information__contents-text h3::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.5rem;
  height: 100%;
  background: #0053A3;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents-text h3 {
    font-size: 1.8rem;
    line-height: 1.7777777778;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
.p-under-information__contents-text a {
  text-decoration: underline;
  word-break: break-all;
}

.p-under-information__contents-icatch {
  width: 50rem;
  margin: 3rem auto 0;
}
.p-under-information__contents-icatch img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-under-information__contents-icatch {
    width: 100%;
  }
}

/* color
----------------------------------------------------------------- */
.u-color--base {
  color: #0053A3;
}
.u-color--second {
  color: #FAFDFF;
}
.u-color--accent {
  color: #F88600;
}
.u-color--text {
  color: #333333;
}
.u-color--white {
  color: #ffffff;
}

/* display
----------------------------------------------------------------- */
.u-disp-block {
  display: block;
}
@media screen and (max-width: 767px) {
  .u-disp-block--pc {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .u-disp-block--sp {
    display: none;
  }
}

.u-disp-flex {
  display: flex;
}
@media screen and (min-width: 768px) {
  .u-disp-flex--pc {
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  .u-disp-flex--sp {
    display: flex;
  }
}

.u-disp-none {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-disp-none--pc {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .u-disp-none--sp {
    display: none;
  }
}

.u-disp-contnts {
  display: contents;
}

/* position
----------------------------------------------------------------- */
.u-posi-relative {
  position: relative;
}
@media screen and (min-width: 768px) {
  .u-posi-relative--pc {
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .u-posi-relative--sp {
    position: relative;
  }
}

.u-posi-absolute {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .u-posi-absolute--pc {
    position: absolute;
  }
}
@media screen and (max-width: 767px) {
  .u-posi-absolute--sp {
    position: absolute;
  }
}

.u-posi-fixed {
  position: fixed;
}
@media screen and (min-width: 768px) {
  .u-posi-fixed--pc {
    position: fixed;
  }
}
@media screen and (max-width: 767px) {
  .u-posi-fixed--sp {
    position: fixed;
  }
}

/* font
----------------------------------------------------------------- */
.u-font--normal {
  font-weight: normal;
}
.u-font--medium {
  font-weight: bold;
}
.u-font--bold {
  font-weight: bold;
}
.u-font--italic {
  font-style: italic;
}
.u-font--center {
  text-align: center;
}
.u-font--right {
  text-align: right;
}
.u-font--left {
  text-align: left;
}
.u-font--nowrap {
  white-space: nowrap;
}
.u-font--wrap {
  white-space: normal;
}
.u-font--lato {
  font-family: "Hiragino Kaku Gothic StdN", sans-serif;
}
.u-font--jp {
  font-family: "Hiragino Kaku Gothic StdN", "Noto Sans JP", sans-serif;
}
.u-font--en {
  font-family: "Rubik", sans-serif;
}

/* align
----------------------------------------------------------------- */
.u-textalign-center {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .u-textalign-center--pc {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .u-textalign-center--sp {
    text-align: center;
  }
}

.u-textalign-right {
  text-align: right;
}
@media screen and (min-width: 768px) {
  .u-textalign-right--pc {
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  .u-textalign-right--sp {
    text-align: right;
  }
}

.u-textalign-left {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .u-textalign-left--pc {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .u-textalign-left--sp {
    text-align: left;
  }
}

/* lineheight
----------------------------------------------------------------- */
.u-lineheight--line {
  line-height: 1;
}

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

.u-hover {
  transition: all 0.2s;
}
.u-hover:hover {
  opacity: 0.8;
  cursor: pointer;
}/*# sourceMappingURL=style.css.map */

.p-contact-form__confirm-button .wpcf7-submit.back {
margin-bottom: 20px;
background: #fff;
border: solid 2px #0053A3;
color: #0053A3;
}

/* 20231218追加 */
.p-header-btn2 a {
	padding: 0.7rem 4rem 0.7rem 1.8rem;
	margin-left: 2rem;
	background: #0053A3;
	border-radius: 5px;
	border: 1px solid #fff;
	font-size: 1.5rem;
	line-height: 1.7333333333;
	letter-spacing: 0.07em;
	font-weight: 700;
	color: #fff;
	transition: all 0.3s ease;
	position: relative;
	min-width: 15.2rem;
}
.p-header-btn2 a::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 2rem;
	width: 1.4rem;
	height: auto;
	aspect-ratio: 1;
	background: #fff;
	border: 1px solid #fff;
	border-radius: 50%;
	transition: all 0.5s ease;
}
.p-header-btn2 a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 2.6rem;
	width: 0.5rem;
	height: auto;
	aspect-ratio: 1;
	border-right: 1px solid #0053A3;
	border-bottom: 1px solid #0053A3;
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.5s ease;
}
@media (hover: hover) {
	.p-header-btn2 a:hover::before {
		right: 1.3rem;
	}
	.p-header-btn2 a:hover::after {
		right: 1.8rem;
	}
}
.p-footer-bidding_info {
	margin: 0 auto 6rem;
	max-width: 85rem;
}
.p-footer-bidding_info a {
	transition: all .3s;
}
@media (hover: hover) {
	.p-footer-bidding_info a:hover {
		opacity: 0.7;
	}
	
}
@media screen and (max-width: 767px) {
	.p-footer-bidding_info {
		margin-bottom: 2rem;
	}
}

.l-login {
	margin-bottom: 10rem;
}
.l-login__box {
	margin: 6rem auto;
	max-width: 80rem;
	background-color: #F6F6F6;
	padding: 6rem 18rem;
}
@media screen and (max-width: 767px) {
	.l-login__box {
		padding: 3rem;
	}
}
.swpm-login-form-inner {
	display: flex;
	flex-wrap: wrap;
/* 	row-gap: 3rem; */
	row-gap: 2rem;
	column-gap: 3rem;
}
.swpm-login-form-inner label {
	display: block;
	font-size: 1.6rem;
	min-width: 9.5rem
}
@media screen and (max-width: 767px) {
	.swpm-login-form-inner {
		row-gap: 0;
	}
}
.swpm-username-input,
.swpm-password-input{
	margin: 0;
	width: 100%;
}
.swpm-login-form-inner input[type=text],
.swpm-login-form-inner input[type=password] {
	background-color: #FFFFFF;
	border: none;
	width: 30rem;
	font-size: 16px;
	padding: 1rem;
	min-height: 4rem;
}
@media screen and (max-width: 767px) {
	.swpm-username-input,
	.swpm-password-input{
		width: 100%;
		margin: 1rem 0 2rem;
	}
	.swpm-login-form-inner input[type=text],
	.swpm-login-form-inner input[type=password] {
		width: 100%;
	}
}
.swpm-remember-me {
	display: flex;
	align-items: center;
}
.swpm-login-submit {
	width: 100%;
	margin: 0;
	display: block;
	text-align: center;
}
.swpm-login-form-inner input[type=submit],
.p-entorybox .btn{
    display: inline-block;
    text-align: center;
    background: linear-gradient(to right, #0053A3, #3D7BB7);
    padding: 2.1rem 6.4rem 1.7rem 6.4rem;
    min-width: 28rem;
    font-size: 1.5rem;
    line-height: 1;
    letter-spacing: 0.15em;
    font-weight: 700;
    border-radius: 3rem;
    position: relative;
    color: #ffffff;
    overflow: hidden;
    border: none;
	cursor: pointer;
}
.l-login__text {
	text-align: center;
	font-size: 1.6rem;
	line-height: 1.875;
	margin-bottom: 2rem;
}
.l-login__btn svg {
	margin-left: 1.2rem;
	margin-bottom: 0.2rem;
}

.bidding_info-ttl {
	text-align: center;
	position: relative;
	font-size: 2.6rem;
	font-weight: 800;
	color: #0053A3;
	letter-spacing: 0.01em;
	padding-bottom: 1.6rem;
	margin-bottom: 3rem;
	line-height: 1.34;
}
.bidding_info-ttl::after {
	position: absolute;
	content: '';
	display: block;
	width: 4.7rem;
	height: 1px;
	background-color: #0053A3;
	bottom: 0;
	left: 50%;
	transform: translatex(-50%);
}
.p-flow.mt {
	margin-top: 10rem;
}
.p-flow__list {
	display: flex;
	column-gap: 4.8rem;
	justify-content: center;
}
@media screen and (max-width: 767px) {
	.p-flow__list {
		flex-wrap: wrap;
		column-gap: 3rem;
		row-gap: 1rem;
		justify-content: flex-start;
	}
}
.p-flow__list li {
	position: relative;
	display: flex;
	flex-direction: column;
	text-align: center;
	align-items: center;
	width: 16rem;
}
.p-flow__list li:not(:last-of-type)::after {
	position: absolute;
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../img/page-bidding_info/flow-arrow.png);
	top: 2rem;
	right: -1.6rem;
	transform: translatex(100%);
	width: 1.6rem;
	height: 4rem;
}
@media screen and (max-width: 767px) {
	.p-flow__list li:not(:last-of-type)::after {
		right: 0;
	}
	
}
.p-flow__list li img {
	width: 8rem;
	height: 8rem;
}
.p-flow__list li .step {
	font-size: 1.6rem;
	color: #0053A3;
	font-weight: 700;
	letter-spacing: 0.1em;
	display: block;
	margin: 2rem 0 1rem;
	font-family: "Rubik", sans-serif;
}
.p-flow__list li .ttl {
	font-size: 1.8rem;
	font-weight: 800;
	flex: 1;
	display: flex;
	align-items: center;
}
.p-flow__list li .ttl02 {
	font-size: 1.6rem;
	font-weight: 800;
	line-height: 1.5;
	flex: 1;
	display: flex;
	align-items: center;
}

.p-flow2 {
	margin: 10rem 0;
}
.p-flow2__list  {
	display: flex;
	flex-direction: column;
	width: max-content;
	margin: 0 auto;
	row-gap: 4.8rem;
}
@media screen and (max-width: 767px) {
	.p-flow2__list {
		width: auto;
	}
}
.p-flow2__list li {
	display: flex;
	align-items: center;
	column-gap: 4rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-flow2__list li {
		column-gap: 2rem;
	}
	
}
.p-flow2__list li:not(:last-of-type)::after {
	position: absolute;
	content: '';
	display: block;
	width: 1px;
	height: 2.4rem;
	background-color: #0053A3;
	left: 4.8rem;
	bottom: -1.2rem;
	transform: translatey(100%);
}
.p-flow2__list li img {
	width: 9.6rem;
	height: 9.6rem;
}
.p-flow2__list li .step {
	display: inline-block;
	background-color: #0053A3;
	color: #fff;
	border-radius: 5rem;
	padding: 0.4rem 1.6rem;
	font-size: 1.6rem;
	line-height: 1;
	letter-spacing: 0.1em;
	font-weight: 700;
	font-family: "Rubik", sans-serif;
}
.p-flow2__list li .ttl {
	font-size: 2.8rem;
	letter-spacing: 0.1em;
	font-weight: 800;
}
.p-flow2__list li .ttl span {
	font-size: 1.8rem;
	margin-left: 2rem;
}
@media screen and (max-width: 767px) {
	.p-flow2__list li:not(:last-of-type)::after {
		left: 4rem;
	}
	.p-flow2__list li img {
		width: 8rem;
		height: 8rem;
	}
	.p-flow2__list li .step {
		margin-bottom: 0.5rem;
	}
	.p-flow2__list li .ttl {
		font-size: 2.2rem;
		line-height: 1.5;
	}
	.p-flow2__list li .ttl span {
		display: block;
		margin-left: 0;
		font-size: 1.2rem;
		line-height: 1;
	}
	
}

.p-contactbox {
	background-color: #F6F6F6;
	padding: 4.5rem 1.6rem;
	max-width: 75rem;
	margin: 10rem auto 0;
}
.p-contactbox .ttl {
	text-align: center;
	color: #0053A3;
	font-size: 2rem;
	margin-bottom: 2.4rem;
}
.p-contactbox .text {
	width: max-content;
	margin: 0 auto;
	font-size: 1.6rem;
	line-height: 1.875;
	font-weight: 500;
}
@media screen and (max-width: 767px) {
	.p-contactbox .text {
		width: auto;
	}
}
.p-information-news__category p.new.new2,
.p-exclusive-fixNews__meta .p-exclusive-fixNews__category p.new,
.p-under-information__contents-category p.new.new2 {
	background-color: #f94444;
	border-color: #f94444;
}
.p-information-tag__list.bidding_info {
	margin-bottom: 5rem;
}
.p-entorybox {
	max-width: 90rem;
	text-align: center;
	padding: 4.5rem 0;
	margin: 0 auto;
	background-color: #F6F6F6;
}
.p-entorybox .ttl {
	color: #0053A3;
	font-size: 2rem;
	line-height: 1.35;
	letter-spacing: 0.2em;
	font-weight: 800;
	margin-bottom:2rem;
}
.p-entorybox .content {
	font-size: 1.6rem;
	line-height: 1.875;
	letter-spacing: 0.1em;
	font-weight: 500;
	margin-bottom: 3rem;
}
.p-under-information__contents a[href*=".pdf"] {
	position: relative;
	padding-left: 3.5rem;
	font-weight: 700;
}
.p-under-information__contents a[href*=".pdf"]::after {
	position: absolute;
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../img/page-bidding_info/ico-pdf.png);
	top: 50%;
	left: 0;
	transform: translatey(-50%);
	width: 1.739rem;
	height: 2rem;
}
.swpm-login-action-msg {
	width: 100%;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.swpm-login-action-msg {
		margin-top: 1rem;
	}
	.bidding_info .p-exclusive-search__category-item a {
		min-width: 16rem;
	}
}
.p-drawer-nav__item.bidding_info {
	padding: 0;
}
.p-drawer-nav__item.bidding_info::before {
	display: none;
}

/* 20240708追加 */
.p-recruit-interview__head-lead {
	margin: 5rem 0 -4rem;
	background-color: #E8EEF3;
	border-radius: 1rem;
	text-align: center;
	padding: 3rem;
}
.p-recruit-interview__head-lead p {
	font-size: 1.8rem;
	font-weight: 800;
	line-height: 1.7777778;
	color: #0053A3;
}
@media screen and (max-width: 767px) {
	.p-recruit-interview__head-lead {
		margin: 4rem 0;
		text-align: left;
		padding: 3rem 2rem;
	}
	.p-recruit-interview__head-lead p {
		font-size: 1.4rem;
	}
}
.p-recruit-interview__main-item .dialogue .text {
	font-weight: 400;
}
.p-recruit-interview__main-item .dialogue .text .marker {
	background-color: #E8EEF3;
}
.p-recruit-interview__main-item .dialogue img {
	height: auto;
}
@media screen and (min-width: 768px) {
	.p-recruit-interview__main-item .dialogue + .dialogue {
		margin-top: 3rem;
	}
	.p-recruit-interview__main-item .dialogue.mt {
		margin-top: 5rem;
	}
	.p-recruit-interview__main-item .dialogue {
		display: flex;
		align-items: flex-start;
		column-gap: 3rem;
	}
	.p-recruit-interview__main-item .dialogue img {
		flex-shrink: 0;
		width: 10rem;
	}
}
@media screen and (max-width: 767px) {
	.p-recruit-interview__main-item .dialogue + .dialogue {
		margin-top: 2.4rem;
	}
	.p-recruit-interview__main-item .dialogue.mt {
		margin-top: 4rem;
	}
	.p-recruit-interview__main-item .dialogue img {
		width: 6rem;
		margin: 0 2rem 0 0;
		float: left;
	}
	
}