@charset "UTF-8";
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
}

a {
  text-decoration: none;
  color: #000;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
}

p {
  line-height: 2em;
}

h4 {
  line-height: 2em;
}

div {
  line-height: 2em;
}

img {
  pointer-events: none;
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.55);
}
.site-header .header-inner {
  margin: 0 auto;
  padding: 14px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.site-header .header-inner > h1 {
  margin: 0;
  line-height: 1;
  width: 50%;
  max-width: 255px;
}
.site-header .header-inner > h1 a {
  display: flex;
  align-items: center;
  display: block;
  width: 100%;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  font-weight: 600;
  font-size: 20px;
}
.site-header .header-inner > h1 img {
  display: block;
  width: 100%;
  height: auto;
}
.site-header .header-inner__block {
  display: flex;
  align-items: center;
  gap: 10%;
  width: 100%;
  justify-content: right;
}
.site-header .header-inner__block ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 28px;
  justify-content: center;
}
.site-header .header-inner__block ul li {
  margin: 0;
}
.site-header .header-inner__block ul a {
  display: inline-block;
  padding: 6px 4px;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 15px;
  white-space: nowrap;
}
.site-header .header-inner__block ul a:hover {
  opacity: 0.85;
}
.site-header .header-inner__logo {
  display: flex;
  align-items: center;
  width: 50%;
  max-width: 190px;
  margin: 0;
}
.site-header .header-inner__logo img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 960px) {
  .site-header .header-inner {
    flex-wrap: wrap;
  }
  .site-header .header-inner__block {
    width: 100%;
    justify-content: space-between;
  }
  .site-header .header-inner__block ul {
    flex-wrap: wrap;
    gap: 14px 18px;
    justify-content: flex-start;
  }
}
.headblock#block__a {
  position: relative;
}
.headblock#block__a .title__name {
  width: 90%;
  height: 100%;
  max-width: 1145px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -15%);
  display: flex;
  align-items: center;
  height: 100%;
  color: #fff;
  font-size: 9.6rem;
  font-weight: bold;
  text-shadow: 1px 1px 10px #000;
  letter-spacing: 1rem;
  line-height: 1.5em;
  z-index: 110;
}
.headblock#block__a .headblock__bgvideo {
  width: 100%;
}
.headblock#block__a .headblock__bgvideo:after {
  height: 100%;
  width: 100%;
  background: #000;
  content: "";
  display: block;
}
.headblock#block__a .headblock__slide {
  position: relative;
  background: url(../images/movie.mp4) no-repeat top center;
  z-index: 90;
}

.headblock {
  width: 100%;
}
.headblock .headblock__slide {
  width: 100%;
  z-index: -3;
  position: relative;
}
.headblock .headblock__slide img {
  display: block;
  width: 100%;
  height: auto;
}

.tttmenu {
  position: relative;
}
.tttmenu a {
  position: relative;
  z-index: 9;
}
.tttmenu:after {
  position: absolute;
  height: 230%;
  width: 100%;
  top: 0;
  left: 0;
  content: "";
  z-index: 1;
}
.tttmenu .submenu {
  position: absolute;
  background: rgba(0, 0, 0, 0.55);
  bottom: -6.7rem;
  left: 50%;
  transform: translate(-50%, 75%);
  display: block !important;
  width: 300%;
  text-align: center;
  opacity: 0;
  pointer-events: none;
}
.tttmenu .submenu li {
  padding-top: 0.5rem;
}
.tttmenu .submenu li a {
  display: block;
  padding-bottom: 1rem;
}
.tttmenu.tt01 .submenu {
  top: -9.2rem;
}
.tttmenu.tt02 .submenu {
  top: -9.2rem;
}
.tttmenu.tt03 .submenu {
  top: -9.2rem;
}
.tttmenu.is-active .submenu {
  transition: 0.3s;
  opacity: 1;
  pointer-events: initial;
}

#block__b .headblock__slide {
  position: relative;
}
#block__b .headblock__slide:before {
  content: "";
  background: #555;
  opacity: 0.5;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
  display: block;
}
#block__b .headblock__slide .headblock__slide__content {
  width: 90%;
  height: 100%;
  max-width: 1145px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
}
#block__b .headblock__slide .headblock__slide__content .title__name {
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translate(0%, -50%);
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 2.6rem;
  color: #fff;
}
#block__b .headblock__slide .headblock__slide__content .title__name span {
  font-size: 2.4rem;
  font-family: "Noto Sans JP", sans-serif;
  position: absolute;
  bottom: -2rem;
  left: 0%;
  transform: translate(0%, 0);
  letter-spacing: 0.3rem;
}
#block__b .headblock__slide .headblock__slide__content .wp-block-post-title {
  color: #fff;
  position: absolute;
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 6.9rem;
  top: 50%;
  left: 50%;
  z-index: 9;
  transform: translate(-50%, -50%);
}

.site-footer {
  width: 100%;
  border-bottom: 3rem solid #CFE8FA;
}
.site-footer .footer-inner {
  width: 90%;
  margin: auto;
  border-top: 0.2rem solid #40A2E9;
  padding-bottom: 10rem;
  padding-top: 8rem;
}
.site-footer .footer-inner a {
  display: block;
}
.site-footer .footer-inner a:hover {
  color: #0057AA;
}
.site-footer .footer-inner h1 {
  width: 50%;
  max-width: 400px;
  margin-bottom: 6rem;
}
.site-footer .footer-inner .footer__flex {
  display: flex;
  justify-content: space-between;
}
.site-footer .footer-inner .footer__flex .footer__flex__info {
  font-weight: bold;
  line-height: 2em;
  font-size: 1.4rem;
  letter-spacing: 3px;
}
.site-footer .footer-inner .footer__flex .footer__flex__menu {
  display: flex;
  font-size: 1.2rem;
  gap: 13rem;
}
.site-footer .footer-inner .footer__flex .footer__flex__menu li {
  line-height: 2em;
}
.front {
  margin-top: -20.5%;
  padding-top: 12.5%;
  background: url(../images/basebg01.png) no-repeat top center;
  background-size: 100%;
  margin-bottom: 42rem;
}

.frontblock h2 {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 8.8rem;
  margin-bottom: 6rem;
  padding-top: 5%;
  text-align: center;
  position: relative;
}
.frontblock img {
  width: 100%;
  height: auto;
}
.frontblock a {
  list-style: none;
  text-decoration: none;
  white-space: nowrap;
}
.frontblock__content {
  line-height: 1.3em;
}
.frontblock#frontblock01 .frontblock__content {
  width: 90%;
  margin: auto;
  color: #fff;
  margin-bottom: 12rem;
  position: relative;
  z-index: 99;
  background: linear-gradient(to bottom, #0b5fa5 0%, #083a66 35%, #000000 100%);
  font-weight: bold;
}
.frontblock#frontblock01 .frontblock__content h3 {
  width: 67%;
  margin: auto;
  font-size: 4.4rem;
  margin-bottom: 3.6rem;
  line-height: 1.5em;
}
.frontblock#frontblock01 .frontblock__content .read {
  line-height: 1.7em;
  width: 66.5%;
  margin: auto;
  margin-bottom: 3rem;
}
.frontblock#frontblock01 .frontblock__content .photo {
  width: 60%;
  max-width: 420px;
  margin: auto auto 3rem auto;
  position: relative;
}
.frontblock#frontblock01 .frontblock__content .photo:before {
  position: absolute;
  bottom: calc(50% + 1.25rem);
  right: -15rem;
  content: "本社営業所新社屋";
  display: block;
  color: #fff;
}
.frontblock#frontblock01 .frontblock__content .photo:after {
  position: absolute;
  bottom: calc(50% - 1.25rem);
  right: -14rem;
  content: "2027年完成予定 ";
  display: block;
  color: #fff;
}
.frontblock#frontblock01 .frontblock__content .btn {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: auto;
  padding-bottom: 5%;
}
.frontblock#frontblock01 .frontblock__content .btn__list {
  width: 48%;
  max-width: 410px;
  margin: 0 1.5%;
  transition: 0.7s;
  background: linear-gradient(to bottom, #ffffff 0%, #ffffff 3%, #B0BAC4 10%, #B0BAC4 100%);
}
.frontblock#frontblock01 .frontblock__content .btn__list a {
  color: #fff;
  width: 100%;
  display: block;
  text-align: center;
  padding: 3.5rem 0;
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 4.4rem;
}
.frontblock#frontblock01 .frontblock__content .btn__list:hover {
  background: #fff;
}
.frontblock#frontblock01 .frontblock__content .btn__list:hover a {
  background: #fff;
  color: #333;
}
.frontblock#frontblock02 {
  margin-bottom: 13rem;
}
.frontblock#frontblock02.recruit .frontblock__content {
  width: 95%;
}
.frontblock#frontblock02.recruit .frontblock__content a {
  display: block;
  color: #fff;
}
.frontblock#frontblock02.recruit .frontblock__content .photolist {
  width: 100%;
  display: flex;
  justify-content: center;
}
.frontblock#frontblock02.recruit .frontblock__content .photolist img {
  width: 33.3333333333%;
}
.frontblock#frontblock02.recruit .frontblock__content .cotnent__block {
  width: 90%;
  padding: 0 5%;
  background: #0057AA;
  padding-bottom: 6.5rem;
}
.frontblock#frontblock02.recruit .frontblock__content .cotnent__block h2 {
  text-align: left;
  margin-bottom: 3rem;
  position: relative;
}
.frontblock#frontblock02.recruit .frontblock__content .cotnent__block h2:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: calc(50% + 15px);
  transform: translate(-50%, 100%);
  width: 80px;
  height: 15px;
  background: url(../images/yajirushi.png) no-repeat top center;
  z-index: 9;
  background-size: 100%;
  transition: 0.3s;
}
.frontblock#frontblock02.recruit .frontblock__content a:hover .cotnent__block h2:before {
  right: -6.5%;
}
.frontblock#frontblock03 {
  margin-bottom: -23.6rem;
}
.frontblock#frontblock03.contents .read {
  font-weight: bold;
  margin-bottom: 5.5rem;
  text-align: center;
}
.frontblock#frontblock03.contents .frontblock__content {
  width: 90%;
  margin: auto;
}
.frontblock#frontblock03.contents .frontblock__content a {
  display: block;
}
.frontblock#frontblock03.contents .frontblock__content .contentsblock__list {
  display: flex;
  justify-content: space-between;
  width: 100%;
  flex-wrap: wrap;
}
.frontblock#frontblock03.contents .frontblock__content .contentsblock__list .contentsblock__list__item {
  width: 30%;
  margin-bottom: 8rem;
}
.frontblock#frontblock03.contents .frontblock__content .contentsblock__list .contentsblock__list__item a h3 {
  font-size: 1.2rem;
}
.frontblock#frontblock03.contents .frontblock__content .contentsblock__list .contentsblock__list__item a h3 span {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  display: block;
  color: #0057AA;
  font-weight: bold;
  margin: 2rem 0 1rem;
  font-size: 2.4rem;
}
.frontblock#frontblock03.contents .frontblock__content .contentsblock__list .contentsblock__list__item a:hover {
  opacity: 0.7;
}
.frontblock#frontblock04 {
  margin-bottom: 13rem;
  background: url(../images/basebg02.png) no-repeat top center;
  background-size: 125%;
  padding-top: 32rem;
}
.frontblock#frontblock04.sustainability .frontblock__content {
  width: 95%;
  margin: 0 0 0 auto;
}
.frontblock#frontblock04.sustainability .frontblock__content a {
  display: block;
  color: #fff;
}
.frontblock#frontblock04.sustainability .frontblock__content .photolist {
  width: 100%;
  display: flex;
  justify-content: center;
}
.frontblock#frontblock04.sustainability .frontblock__content .photolist img {
  width: 100%;
}
.frontblock#frontblock04.sustainability .frontblock__content .cotnent__block {
  width: 90%;
  padding: 0 5%;
  background: #0057AA;
  padding-bottom: 6.5rem;
}
.frontblock#frontblock04.sustainability .frontblock__content .cotnent__block h2 {
  text-align: left;
  margin-bottom: 3rem;
  position: relative;
}
.frontblock#frontblock04.sustainability .frontblock__content .cotnent__block h2:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: calc(50% + 15px);
  transform: translate(-50%, 100%);
  width: 80px;
  height: 15px;
  background: url(../images/yajirushi.png) no-repeat top center;
  z-index: 9;
  background-size: 100%;
  transition: 0.3s;
}
.frontblock#frontblock04.sustainability .frontblock__content a:hover .cotnent__block h2:before {
  right: -6.5%;
}
.page #block__b .headblock__slide .headblock__slide__content h2.wp-block-post-title {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.pagecontent {
  padding: 12.8rem 0 45.6rem 0;
  background: url(../images/basebg03.png) no-repeat top center;
  background-size: 125%;
  line-height: 2em;
}
.pagecontent h1.title {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  width: 90%;
  max-width: 1145px;
  margin: auto;
  font-size: 6.9rem;
  margin-bottom: 17.1rem;
  font-weight: normal;
  position: relative;
  text-align: center;
  letter-spacing: 1.5rem;
}
.pagecontent h1.title p.title__no {
  text-align: left;
  position: absolute;
  top: 2rem;
  left: 0;
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 2.6rem;
  letter-spacing: 0rem;
}
.pagecontent h1.title p.title__no span {
  display: block;
  line-height: 1em;
  margin-top: 2rem;
  letter-spacing: 0.2rem;
  font-size: 2.4rem;
  color: #0057AA;
  font-family: "Noto Sans JP", sans-serif;
}
.pagecontent h2 {
  text-align: center;
  font-size: 4.4rem;
  font-weight: bold;
  color: #0057AA;
  margin-bottom: 13.5rem;
  line-height: 1.7em;
  letter-spacing: 0.05em;
}
.pagecontent .contentwrap {
  width: 85%;
  max-width: 1145px;
  margin: auto;
}
.pagecontent .contentwrap.people {
  width: 100%;
  max-width: 100%;
}
.pagecontent .btnarea a {
  display: block;
  max-width: 640px;
  width: 100%;
  height: auto;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 4.4rem;
  line-height: 2em;
  margin: auto;
  margin-bottom: 2.7rem;
  background: linear-gradient(180deg, #c8d0d6 0%, #b8c1c8 40%, #b2bcc3 100%);
  box-shadow: inset 0 2px 3px rgba(255, 255, 255, 0.25), inset 0 -2px 4px rgba(0, 0, 0, 0.12), 0 6px 14px rgba(0, 0, 0, 0.25); /* 外側の浮き */
}
.pagecontent .btnarea a:hover {
  background: #0057AA;
}
.pagecontent .contentsblock__list {
  display: flex;
  justify-content: left;
  width: 100%;
  flex-wrap: wrap;
}
.pagecontent .contentsblock__list.threecolumn .contentsblock__list__item {
  width: 30%;
  margin-bottom: 8rem;
  margin-right: 5%;
}
.pagecontent .contentsblock__list.threecolumn .contentsblock__list__item:nth-child(3n) {
  margin-right: 0%;
}
.pagecontent .contentsblock__list .contentsblock__list__item {
  width: 30%;
  margin-bottom: 8rem;
  margin-right: 5%;
}
.pagecontent .contentsblock__list .contentsblock__list__item a {
  display: block;
}
.pagecontent .contentsblock__list .contentsblock__list__item a h3 {
  font-size: 2rem;
  letter-spacing: 0.3rem;
}
.pagecontent .contentsblock__list .contentsblock__list__item a h3 span {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  display: block;
  color: #0057AA;
  font-weight: bold;
  margin: 2rem 0 1rem;
  font-size: 1.4rem;
}
.pagecontent .contentsblock__list .contentsblock__list__item a:hover {
  opacity: 0.7;
}
.pagecontent .flexbox {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5.5rem;
  flex-direction: row-reverse;
}
@media (max-width: 960px) {
  .pagecontent .flexbox {
    display: block;
  }
}
.pagecontent .flexbox .flexbox__photo {
  max-width: 440px;
  width: 38.9%;
}
@media (max-width: 960px) {
  .pagecontent .flexbox .flexbox__photo {
    width: 100%;
    margin: 1.5rem;
  }
}
.pagecontent .flexbox .flexbox__text {
  max-width: 650px;
  width: 60%;
  line-height: 2em;
}
.pagecontent .flexbox .flexbox__text h3 {
  font-size: 2rem;
  color: #0057AA;
  margin-bottom: 3.5rem;
}
@media (max-width: 960px) {
  .pagecontent .flexbox .flexbox__text {
    width: 100%;
    margin: 0 auto 1.5rem;
  }
}
.pagecontent .enterprisebox {
  margin-top: 13rem;
}
.pagecontent .enterprisebox h2 {
  font-size: 2rem;
  margin: auto auto 4rem auto;
  width: 100%;
  text-align: center;
  padding: 1.5rem;
  line-height: 1em;
  color: #0057AA;
  border-top: 1px solid #40A2E9;
  border-bottom: 1px solid #40A2E9;
}
.pagecontent .enterprisebox h3 {
  color: #0057AA;
  font-size: 4.4rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2px;
  margin: auto auto 4rem auto;
}
.pagecontent .enterprisebox .flexbox__text h3 {
  text-align: left;
}
.pagecontent .enterprisebox:nth-child(1) .flexbox {
  justify-content: right;
}
.pagecontent .enterprisebox:nth-child(1) .flexbox .flexbox__text {
  margin-right: 9.5rem;
}
.pagecontent .enterprisebox:nth-child(2) .flexbox {
  justify-content: left;
}
.pagecontent .enterprisebox:nth-child(2) .flexbox .flexbox__text {
  margin-left: 9.5rem;
}
.pagecontent .enterprisebox:nth-child(3) .flexbox {
  justify-content: right;
}
.pagecontent .enterprisebox:nth-child(3) .flexbox .flexbox__text {
  margin-right: 9.5rem;
}
.pagecontent .profilelist {
  display: flex;
  justify-content: space-between;
  margin: 0;
}
.pagecontent .profilelist .profilelist__subtitle {
  width: 10.5%;
  line-height: 1.7em;
  padding: 1.5rem 0 1.5rem 1.5rem;
  border-bottom: 1px solid #707070;
}
.pagecontent .profilelist .profilelist__text {
  margin-left: 0;
  width: 87%;
  padding: 1.5rem 0 1.5rem 1.5rem;
  border-bottom: 1px solid #707070;
  line-height: 1.7em;
}
.pagecontent .profilelist .profilelist__text span {
  display: block;
  padding: 1.5rem;
  border-bottom: 1px dotted #707070;
  line-height: 1.7em;
}
.pagecontent .profilelist .profilelist__text span.line {
  border-bottom: 1px solid #707070;
}
.pagecontent .profilelist .profilelist__text span:first-child {
  padding-top: 0;
}
.pagecontent .profilelist .profilelist__text span:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.pagecontent .sub {
  font-size: 2rem;
  margin-bottom: 4rem;
  font-weight: bold;
}
.pagecontent .office__box {
  margin-bottom: 14rem;
  line-height: 2em;
}
.pagecontent .office__box h3 {
  font-size: 1.4rem;
  font-weight: bold;
  color: #0057AA;
  border-bottom: 1px solid #006fbd;
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
}
.pagecontent .office__box ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.pagecontent .office__box ul li {
  width: 49%;
  margin-bottom: 2rem;
}
.pagecontent .office__box ul li.map {
  height: auto;
  position: relative;
  padding-top: 35.3%;
  overflow: hidden;
}
.pagecontent .office__box ul li.map iframe {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.pagecontent .dayflow {
  width: 85%;
  max-width: 1145px;
  margin: auto;
  font-size: 1.6rem;
  margin-bottom: 17rem;
}
.pagecontent .dayflow__ttl {
  margin: 0 0 1.6rem 4rem;
  font-size: 2rem;
  font-weight: 700;
  color: #0b64b3;
  text-align: left;
}
.pagecontent .dayflow__row {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border: 1px solid rgba(0, 0, 0, 0.35);
  background: #e9f4ff;
  overflow: hidden;
}
.pagecontent .dayflow__card {
  position: relative;
  padding: 3.2rem 2.4rem 2.4rem;
  min-height: 28rem;
}
.pagecontent .dayflow__card:not(:last-child) {
  clip-path: polygon(0 0, calc(100% - 3.2rem) 0, 100% 50%, calc(100% - 3.2rem) 100%, 0 100%);
}
.pagecontent .dayflow__card:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background: rgba(0, 0, 0, 0.35);
  transform: skewX(-10.8deg);
  transform-origin: top right;
  opacity: 0.7;
  position: absolute;
  right: -14%;
}
.pagecontent .dayflow__card:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background: rgba(0, 0, 0, 0.35);
  transform: skewX(10.8deg);
  transform-origin: top right;
  opacity: 0.7;
  position: absolute;
  right: 14%;
}
.pagecontent .dayflow__time {
  margin: 0 0 1.2rem;
  font-size: 2.4rem;
  font-weight: 800;
  color: #0b64b3;
  letter-spacing: 0.02em;
}
.pagecontent .dayflow__line {
  height: 2px;
  background: #0b64b3;
  margin: 0 0 1.6rem;
}
.pagecontent .dayflow__head {
  margin: 0 0 1.2rem;
  font-size: 1.8rem;
  font-weight: 800;
  color: #0b64b3;
}
.pagecontent .dayflow__txt {
  margin: 0;
  line-height: 1.85;
  color: rgba(0, 0, 0, 0.75);
  font-weight: 600;
}
@media (max-width: 1100px) {
  .pagecontent .dayflow__row {
    grid-template-columns: repeat(5, minmax(26rem, 1fr));
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .pagecontent .dayflow__card {
    min-height: 26rem;
  }
}
@media (max-width: 600px) {
  .pagecontent .dayflow {
    font-size: 1.6rem;
  }
  .pagecontent .dayflow__ttl {
    font-size: 2rem;
  }
}

.slug-profile_message #block__b .headblock__slide .headblock__slide__content .wp-block-post-title {
  letter-spacing: 1.5rem;
}
.slug-profile_message .read {
  width: 100%;
  max-width: 710px;
  margin: auto;
}
.slug-profile_message .read p {
  margin-bottom: 7rem;
  font-size: 1.6rem;
  line-height: 2em;
  font-weight: bold;
}
.slug-profile_message .read h3 {
  text-align: right;
  line-height: 2.5em;
  font-size: 3.2rem;
  font-family: "HG正楷書体-PRO", "HGSeikaishotaiPRO", "Yu Mincho", serif;
}
.slug-profile_message .read h3 span {
  display: block;
  font-size: 2rem;
}

.slug-recruit_about #block__b .headblock__slide .headblock__slide__content .wp-block-post-title {
  letter-spacing: 1.5rem;
  width: 100%;
  text-align: center;
}
.slug-recruit_about .pagecontent {
  width: 100%;
}
.slug-recruit_about .pagecontent .contentwrap {
  width: 100%;
  max-width: 100%;
}
.slug-recruit_about .pagecontent .flexbox {
  position: relative;
  padding-left: 6%;
  margin-bottom: 28rem;
  padding-top: 12rem;
}
.slug-recruit_about .pagecontent .flexbox.one {
  padding-top: 2rem;
}
.slug-recruit_about .pagecontent .flexbox.one .flexbox__text {
  position: relative;
}
.slug-recruit_about .pagecontent .flexbox.one .flexbox__text:before {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  content: "1";
  font-size: 51.5rem;
  position: absolute;
  color: #CFE8FA;
  font-style: italic;
  top: 15rem;
  left: -35%;
  z-index: -1;
  transform: scale(1, 1);
}
.slug-recruit_about .pagecontent .flexbox.two {
  padding-left: 0%;
  padding-right: 6%;
  flex-direction: row;
}
.slug-recruit_about .pagecontent .flexbox.two .flexbox__text {
  position: relative;
}
.slug-recruit_about .pagecontent .flexbox.two .flexbox__text:before {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  content: "2";
  font-size: 51.5rem;
  position: absolute;
  color: #CFE8FA;
  font-style: italic;
  top: 2rem;
  left: auto;
  right: -10rem;
  z-index: -1;
  transform: scale(1, 1);
}
.slug-recruit_about .pagecontent .flexbox.three .flexbox__text {
  position: relative;
}
.slug-recruit_about .pagecontent .flexbox.three .flexbox__text:before {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  content: "3";
  font-size: 51.5rem;
  position: absolute;
  color: #CFE8FA;
  font-style: italic;
  top: -3rem;
  left: -25%;
  z-index: -1;
  transform: scale(1, 1);
}
.slug-recruit_about .pagecontent .flexbox .flexbox__photo {
  max-width: 540px;
  width: 39.9%;
}

.slug-profile_outline .pagecontent, .slug-profile_histor .pagecontent, .slug-privacy .pagecontent {
  margin-top: 6.836rem;
  border-top: 2px solid #0057AA;
}

.slug-profile_history .pagecontent .profilelist .profilelist__subtitle {
  width: 9.5%;
  border-bottom: 1px dotted #707070;
}
.slug-profile_history .pagecontent .profilelist .profilelist__text {
  border-bottom: 1px dotted #707070;
}

.slug-privacy {
  font-size: 1.6rem;
}
.slug-privacy .wp-block-post-title {
  font-size: 2.6rem;
  color: #000;
  text-align: left;
  width: 90%;
  max-width: 1145px;
  margin: auto auto 15rem auto;
}
.slug-privacy .privacy__box__read {
  padding: 1.5rem 0;
  border-top: 1px solid #0057AA;
  border-bottom: 1px solid #0057AA;
  margin-bottom: 1.5rem;
}
.slug-privacy .privacy__box {
  margin-bottom: 15rem;
}
.slug-privacy .privacy__box a {
  color: #0057AA;
  text-decoration: underline;
}
.slug-privacy .privacy__box h3 {
  color: #0057AA;
  border-bottom: 1px solid #0057AA;
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
}

.slug-recruit .pagecontent .contentwrap {
  width: 100%;
  max-width: 100%;
}

.recruit__block {
  padding: 7.5rem 0 11.5rem 0;
}
.recruit__block img {
  max-width: 540px;
  width: 40%;
}
.recruit__block .recruit__block__content {
  width: 85%;
  margin: auto;
  background: linear-gradient(135deg, #082c66 0%, #0b5fb5 100%), linear-gradient(135deg, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0.18) 8%, rgba(255, 255, 255, 0) 8%, rgba(255, 255, 255, 0) 22%, rgba(255, 255, 255, 0.12) 22%, rgba(255, 255, 255, 0.12) 30%, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0) 44%, rgba(255, 255, 255, 0.16) 44%, rgba(255, 255, 255, 0.16) 52%, rgba(255, 255, 255, 0) 52%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, 0.1) 70%, rgba(255, 255, 255, 0.1) 80%, rgba(255, 255, 255, 0) 80%);
  padding: 3.5rem 4rem;
  color: #fff;
}
.recruit__block .recruit__block__content a {
  position: relative;
}
.recruit__block .recruit__block__content a span {
  display: block;
  position: absolute;
  top: calc(50% - 0.6rem);
  right: -4.5rem;
  width: 80px;
  transform: translate(0%, -50%);
  z-index: 7;
}
.recruit__block .recruit__block__content a span img {
  width: 100%;
  position: static;
}
.recruit__block .recruit__block__content a:hover span {
  transition: 0.3s;
  right: -7.5rem;
}
.recruit__block .recruit__block__content h2 {
  text-align: left;
  margin-bottom: 5.3rem;
  color: #fff;
  font-size: 2.6rem;
  font-weight: bold;
}
.recruit__block .recruit__block__content h2 span {
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  display: block;
  font-size: 8.8rem;
  margin-bottom: 3.5rem;
}
.recruit__block .recruit__block__content .read {
  margin-bottom: 5rem;
}
.recruit__block .recruit__block__content .btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  min-width: 280px;
  padding: 0 32px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.04em;
  background: linear-gradient(180deg, #c8d0d6 0%, #b8c1c8 40%, #b2bcc3 100%);
  box-shadow: inset 0 2px 3px rgba(255, 255, 255, 0.25), inset 0 -2px 4px rgba(0, 0, 0, 0.12), 0 6px 14px rgba(0, 0, 0, 0.25);
  cursor: pointer;
}
.recruit__block:nth-child(1) {
  overflow: hidden;
  background: url(../images/itaric__back.png) no-repeat bottom left -17%;
  background-size: 50%;
  position: relative;
}
.recruit__block:nth-child(1) img {
  position: absolute;
  right: 0;
  top: 0;
}
.recruit__block:nth-child(1) .recruit__block__content .btn {
  margin-left: 21.5rem;
}
.recruit__block:nth-child(2) {
  padding: 7.5rem 0 3.5rem 0;
  margin-bottom: 8rem;
  position: relative;
  overflow: hidden;
  background: url(../images/itaric__back.png) no-repeat top right -65%;
  background-size: 72.5%;
}
.recruit__block:nth-child(2) .recruit__block__content {
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 100%), linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 45%), linear-gradient(135deg, rgba(0, 0, 0, 0.1) 55%, rgba(0, 0, 0, 0) 100%);
  background-repeat: no-repeat;
  background-size: cover;
  --g1: #0567b9; /* 左側の青 */
  --g2: #023e7c; /* 右側の濃い青 */
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 100%), linear-gradient(135deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 55%, rgba(255, 255, 255, 0.06) 55%, rgba(255, 255, 255, 0.06) 100%), linear-gradient(135deg, rgba(0, 0, 0, 0.1) 20%, rgba(0, 0, 0, 0) 60%);
}
.recruit__block:nth-child(2) img {
  position: absolute;
  left: 0;
  bottom: 0;
}
.recruit__block:nth-child(2) .recruit__block__content {
  padding: 3.5rem 4rem 8.5rem 35%;
  width: 50%;
}
.recruit__block:nth-child(2) .recruit__block__content .btn {
  margin-left: 21.5rem;
}
.recruit__block:nth-child(3) {
  position: relative;
  overflow: hidden;
  background: url(../images/itaric__back.png) no-repeat top left -155%;
  background-size: 72.5%;
}
.recruit__block:nth-child(3) .recruit__block__content {
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 100%), linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 45%), linear-gradient(135deg, rgba(0, 0, 0, 0.1) 55%, rgba(0, 0, 0, 0) 100%);
  background-repeat: no-repeat;
  background-size: cover;
  --g1: #0b73c7;
  --g2: #0aa7e6;
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 100%), linear-gradient(90deg, rgba(0, 0, 0, 0.28) 0%, rgba(0, 0, 0, 0.28) 45%, rgba(0, 0, 0, 0) 70%), linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 55%);
}
.recruit__block:nth-child(3) img {
  position: absolute;
  right: 0;
  top: 0;
}
.recruit__block:nth-child(3) .recruit__block__content .btn {
  margin-left: 21.5rem;
}
.recruit__block:nth-child(4) {
  padding: 7.5rem 0 8.5rem 0;
  margin-bottom: 8rem;
  position: relative;
  background: url(../images/itaric__back.png) no-repeat top right -35%;
  background-size: 72.5%;
}
.recruit__block:nth-child(4) .recruit__block__content {
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 100%), linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 45%), linear-gradient(135deg, rgba(0, 0, 0, 0.1) 55%, rgba(0, 0, 0, 0) 100%);
  background-repeat: no-repeat;
  background-size: cover;
  --g1: #0a79cb;
  --g2: #015aa6;
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 100%), linear-gradient(135deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.05) 70%, rgba(255, 255, 255, 0) 100%), linear-gradient(135deg, rgba(0, 0, 0, 0.08) 15%, rgba(0, 0, 0, 0) 55%);
}
.recruit__block:nth-child(4) img {
  position: absolute;
  left: 0;
  bottom: 0;
}
.recruit__block:nth-child(4) .recruit__block__content {
  padding: 3.5rem 4rem 3.5rem 35%;
  width: 50%;
}
.recruit__block:nth-child(4) .recruit__block__content .btn {
  margin-left: 21.5rem;
}
.recruit__block:nth-child(5) {
  position: relative;
}
.recruit__block:nth-child(5) .recruit__block__content {
  --g1: #0a86d6; /* 左：少し彩度UP */
  --g2: #05b7ee; /* 右：明るく */
  background-image: linear-gradient(90deg, var(--g1) 0%, var(--g2) 100%), linear-gradient(90deg, rgba(0, 0, 0, 0.18) 0%, rgba(0, 0, 0, 0.18) 40%, rgba(0, 0, 0, 0) 65%), linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.04) 35%, rgba(255, 255, 255, 0) 60%);
}
.recruit__block:nth-child(5) img {
  position: absolute;
  right: 0;
  top: 0;
}
.recruit__block:nth-child(5) .recruit__block__content .btn {
  margin-left: 21.5rem;
}

.slug-people03 .peoplebox .peoplebox__block:nth-child(3) .q {
  width: 65%;
}

.welfarebox .welfarebox__block h3 {
  display: flex;
  margin-bottom: 5rem;
}
.welfarebox .welfarebox__block h3 .title {
  width: 70%;
  display: block;
  padding: 7rem 0;
  font-weight: bold;
  font-size: 4.4rem;
  align-items: center;
  display: flex;
  text-align: center;
  color: #fff;
  background: linear-gradient(90deg, #005ea8 0%, #006fbd 40%, #0a8bd6 100%);
  justify-content: center;
}
.welfarebox .welfarebox__block h3 .photo {
  width: 30%;
}
.welfarebox .welfarebox__block h3 .photo img {
  vertical-align: middle;
  width: 100%;
}
.welfarebox .welfarebox__block ul {
  display: flex;
  justify-content: space-between;
  justify-items: auto;
  flex-wrap: wrap;
  gap: 4rem;
  margin-bottom: 16rem;
}
.welfarebox .welfarebox__block ul li {
  width: 27%;
  margin-bottom: 2%;
  border: 1px solid #0057AA;
  background: #F4F4F4;
  padding: 2rem;
  line-height: 2em;
}
.welfarebox .welfarebox__block ul li div {
  display: flex;
  justify-content: space-between;
}
.welfarebox .welfarebox__block ul li div p {
  width: 49%;
  line-height: 1.7em;
}
.welfarebox .welfarebox__block ul li span {
  font-size: 1.2rem;
  line-height: 1.7em;
  display: block;
}
.welfarebox .welfarebox__block ul li:nth-child(3) {
  margin-right: 0%;
}
.welfarebox .welfarebox__block ul li h4 {
  text-align: center;
  color: #0057AA;
  font-size: 2rem;
  margin-bottom: 2rem;
}

.scrollbar {
  display: block;
  position: absolute;
  top: 1.5%;
  right: 1.5%;
  z-index: 8;
}
.scrollbar .scroll {
  display: block;
  width: 6.5rem;
}
.scrollbar .yajirushi__top {
  display: block;
  width: 2rem;
  margin-left: 2.5rem;
  margin-top: 1rem;
  transition: 0.3s;
}
.scrollbar:hover .yajirushi__top {
  padding-top: 1rem;
}

.slug-qa .btnarea {
  margin-top: 24rem;
}

.qabox .qabox__list {
  margin-bottom: 0rem;
  padding-top: 0rem;
}
.qabox .qabox__list ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.qabox .qabox__list li {
  width: calc(33.3333333333% - 1.5rem);
  margin-bottom: 1.5rem;
}
.qabox .qabox__list li a {
  display: block;
  width: 100%;
  text-align: center;
  background: linear-gradient(90deg, #005ea8 0%, #006fbd 40%, #0a8bd6 100%);
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 2rem 0;
}
.qabox .qabox__block {
  margin-bottom: 0rem;
  padding-top: 13rem;
}
.qabox .qabox__block h3 {
  font-size: 1.4rem;
  color: #0057AA;
  margin-bottom: 2rem;
  letter-spacing: 0.3rem;
}
.qabox .qabox__block .qabox__block__item {
  margin-bottom: 4rem;
  line-height: 2em;
}
.qabox .qabox__block .qabox__block__item span {
  line-height: 2em;
}
.qabox .qabox__block .qabox__block__item .q {
  width: calc(100% - 3rem);
  padding: 1rem 1.5rem 1.5rem 1.5rem;
  color: #0057AA;
  font-size: 2rem;
  background: #CFE8FA;
  margin-bottom: 2.5rem;
  display: flex;
  align-items: center;
  font-weight: bold;
  position: relative;
  cursor: pointer;
}
.qabox .qabox__block .qabox__block__item .q:after {
  content: "＋";
  color: #707070;
  font-weight: bold;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translate(0px, -50%);
}
.qabox .qabox__block .qabox__block__item .q.is-open:after {
  transform: scale(0.95, 1);
  content: "ー";
  color: #707070;
  font-weight: bold;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translate(0px, -50%);
}
.qabox .qabox__block .qabox__block__item .q .q__text {
  display: flex;
  margin-right: 3rem;
  font-size: 3.6rem;
  font-weight: normal;
  line-height: 1.4em;
  align-items: center;
}
.qabox .qabox__block .qabox__block__item .q .txt {
  letter-spacing: 0.3rem;
}
.qabox .qabox__block .qabox__block__item .a {
  padding-left: 1rem;
  display: flex;
  justify-content: left;
  align-items: start;
  display: none;
}
.qabox .qabox__block .qabox__block__item .a.is-open {
  display: flex;
}
.qabox .qabox__block .qabox__block__item .a .a__text {
  display: block;
  margin-right: 3rem;
  font-size: 3.6rem;
  font-weight: bold;
  color: #F26532;
  line-height: 1.3em;
  font-weight: normal;
}
.qabox .qabox__block .qabox__block__item .a .txt {
  display: block;
}
.qabox .qabox__block .qabox__block__item .a .txt a {
  color: #0057AA;
  text-decoration: underline;
}

.slug-recruit_list #block__b .headblock__slide .headblock__slide__content .wp-block-post-title {
  letter-spacing: 2.5rem;
  text-align: center;
  width: 100%;
}
.slug-recruit_list h2 {
  font-size: 2.8rem;
  text-align: left;
  width: 90%;
  width: 1145px;
  margin: auto;
  margin-bottom: 13.5rem;
}
.slug-recruit_list .btnarea a:nth-child(2) {
  display: none;
}
.slug-recruit_list .recruit_listbox {
  margin-bottom: 13rem;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block {
  margin-bottom: 13rem;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block h3 {
  font-size: 2rem;
  margin-bottom: 2rem;
  color: #0057AA;
  font-weight: bold;
  letter-spacing: 0.5rem;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block .recruit_listbox__block__item {
  display: flex;
  justify-content: left;
  align-items: center;
  color: #0057AA;
  margin-bottom: 2.5rem;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block .recruit_listbox__block__item .box {
  width: 70%;
  padding: 2rem 3rem;
  border: 1px solid #0057AA;
  display: flex;
  justify-content: center;
  margin-right: 3rem;
  background: #F4F4F4;
  letter-spacing: 0.3rem;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block .recruit_listbox__block__item .box span {
  width: 50%;
  font-weight: bold;
  display: block;
  border-right: 1px solid #0057AA;
  padding: 0.5rem 0 0.5rem 0rem;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block .recruit_listbox__block__item .box span:last-child {
  padding: 0.5rem 0 0.5rem 4rem;
  border-right: none;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block .recruit_listbox__block__item .link {
  color: #0057AA;
  letter-spacing: 0.3rem;
  display: block;
  font-weight: bold;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block .entry {
  display: block;
  width: 100%;
  text-align: center;
  color: #fff;
  background: #0057AA;
  font-size: 2rem;
  font-weight: bold;
  padding: 2rem 0;
  border: 1px solid #0057AA;
  transition: 0.3s;
  letter-spacing: 0.5rem;
}
.slug-recruit_list .recruit_listbox .recruit_listbox__block .entry:hover {
  background: #fff;
  color: #0057AA;
}

.csrbox .csrbox__block {
  margin-bottom: 15rem;
  display: flex;
  justify-content: space-between;
}
.csrbox .csrbox__block .photo {
  width: 30%;
  width: 32.5%;
}
.csrbox .csrbox__block .photo span {
  margin-left: 1.5rem;
  display: block;
  line-height: 1.5em;
  font-size: 1.4rem;
}
.csrbox .csrbox__block .photo img {
  max-width: 100%;
  height: auto;
}
.csrbox .csrbox__block .photo .flex {
  display: flex;
  width: 100%;
  gap: 2rem;
}
.csrbox .csrbox__block .photo .flex img {
  max-width: 20%;
  height: auto;
}
.csrbox .csrbox__block .text {
  margin-bottom: 0;
}
.csrbox .csrbox__block .text h3 {
  color: #0057AA;
  margin-bottom: 1rem;
  line-height: 2em;
  font-size: 2.4rem;
  font-weight: bold;
}
.csrbox .csrbox__block:nth-child(1) {
  flex-direction: row-reverse;
}
.csrbox .csrbox__block:nth-child(1) .text {
  padding-right: 14.5rem;
  padding-bottom: 14.5rem;
  border-bottom: 1px solid #0a8bd6;
}
.csrbox .csrbox__block:nth-child(2) {
  border-bottom: 1px solid #0a8bd6;
  padding-bottom: 12.5rem;
}
.csrbox .csrbox__block:nth-child(2) .photo {
  width: 40%;
  margin-left: -13%;
}
.csrbox .csrbox__block:nth-child(2) .text {
  width: 60%;
}
.csrbox .csrbox__block:nth-child(3) {
  flex-direction: row-reverse;
  border-bottom: 1px solid #0a8bd6;
  padding-bottom: 12.5rem;
}
.csrbox .csrbox__block:nth-child(3) .photo {
  width: 20%;
  margin: auto;
}
.csrbox .csrbox__block:nth-child(3) .text {
  width: 65%;
}
.csrbox .csrbox__block:nth-child(4) {
  flex-direction: row-reverse;
  border-bottom: 1px solid #0a8bd6;
  padding-bottom: 12.5rem;
}
.csrbox .csrbox__block:nth-child(4) .photo {
  width: 65.5%;
  margin-right: -13%;
}
.csrbox .csrbox__block:nth-child(4) .photo img {
  width: 100%;
}
.csrbox .csrbox__block:nth-child(4) .text {
  width: 60%;
}
.csrbox .csrbox__block:nth-child(5) {
  flex-direction: row;
  border-bottom: 1px solid #0a8bd6;
  padding-bottom: 2rem;
}
.csrbox .csrbox__block:nth-child(5) .text {
  width: 55%;
}
.csrbox .csrbox__block:nth-child(5) .text p {
  line-height: 2em;
  position: relative;
}
.csrbox .csrbox__block:nth-child(5) .text p span {
  padding: 0 2.5rem 0 0;
  background: #fff;
  position: relative;
  display: inline-block;
  position: relative;
  z-index: 3;
}
.csrbox .csrbox__block:nth-child(5) .text p:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 100%;
  left: 0;
  content: "";
  transform: translate(0, -50%);
  border-bottom: 1px solid #0a8bd6;
}
.csrbox .csrbox__block:nth-child(5) .photo {
  width: 40%;
}
.csrbox .csrbox__block:nth-child(5) .photo .flex img {
  max-width: 29.8507462687%;
}

.peoplebox {
  width: 100%;
  overflow-x: hidden;
  margin-bottom: 17rem;
}
.peoplebox .peoplebox__block {
  width: 85%;
  max-width: 1145px;
  padding: 0 7.5%;
  margin-bottom: 17rem;
  font-size: 1.6rem;
}
.peoplebox .peoplebox__block.flex {
  display: flex;
  justify-content: space-between;
}
.peoplebox .peoplebox__block.flex .main {
  width: 38%;
  max-width: 420px;
  margin-right: -5%;
}
.peoplebox .peoplebox__block.flex .main img {
  width: 100%;
}
.peoplebox .peoplebox__block h2 {
  font-size: 4.4rem;
  letter-spacing: 0;
  text-align: left;
}
.peoplebox .peoplebox__block h2 span {
  font-size: 2.4rem;
  color: #000;
  display: block;
  margin-top: 2.4rem;
}
.peoplebox .peoplebox__block .q {
  font-size: 2rem;
  color: #0057AA;
  display: flex;
  align-items: center;
  margin-bottom: 3rem;
  font-weight: bold;
}
.peoplebox .peoplebox__block .q span {
  display: inline-block;
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 8rem;
  font-weight: bold;
  margin-right: 4rem;
}
.peoplebox .peoplebox__block .a {
  font-size: 2rem;
  display: flex;
  align-items: start;
}
.peoplebox .peoplebox__block .a span {
  color: #0057AA;
  display: inline-block;
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 8rem;
  font-weight: bold;
  margin-right: 4rem;
  padding-top: 3.5rem;
}
.peoplebox .peoplebox__block .a p {
  font-size: 1.6rem;
  padding-top: 3.5rem;
  color: #000;
  padding-right: 2.5%;
  text-align: justify;
}
.peoplebox .peoplebox__block .a img {
  width: 37.4%;
  max-width: 425px;
  margin-right: -5%;
}
.peoplebox .peoplebox__block:nth-child(2) {
  position: relative;
}
.peoplebox .peoplebox__block:nth-child(2):after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../images/itaric__back.png) no-repeat bottom 45% left -28%;
  background-size: 30%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.peoplebox .peoplebox__block:nth-child(3) {
  position: relative;
}
.peoplebox .peoplebox__block:nth-child(3) .after {
  position: absolute;
  width: 30%;
  transform: translate(0%, 0);
  right: -21%;
  top: -18%;
}
.peoplebox .peoplebox__block:nth-child(3) .q {
  justify-content: right;
  margin-right: 2%;
  width: 72%;
}
.peoplebox .peoplebox__block:nth-child(3) .a span {
  margin-left: 5%;
}
.peoplebox .peoplebox__block:nth-child(3) .a img {
  margin-right: 0;
  margin-left: -13%;
}
.peoplebox .peoplebox__block:nth-child(3) .a p {
  padding-right: 0;
}
.peoplebox .peoplebox__block.four {
  padding-bottom: 12.5rem;
  position: relative;
}
.peoplebox .peoplebox__block.four .after {
  position: absolute;
  width: 30%;
  transform: translate(0%, 0);
  left: -21%;
  top: -18%;
}
.peoplebox .peoplebox__block.five {
  padding-left: 15%;
  width: 70%;
  margin: auto;
  max-width: 1145px;
  position: relative;
}
.peoplebox .peoplebox__block.five .after {
  position: absolute;
  width: 30%;
  transform: translate(0%, 0);
  right: -21%;
  top: -18%;
}

.peoplelist {
  width: 80%;
  max-width: 930px;
  margin: auto auto 6rem auto;
}
.peoplelist h3 {
  color: #0057AA;
  font-weight: bold;
  margin-bottom: 4rem;
  font-size: 2rem;
}
.peoplelist ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.peoplelist ul li {
  width: 45%;
}
.peoplelist ul li a {
  display: block;
}
.peoplelist ul li a:hover {
  opacity: 0.7;
  transition: 0.3s;
}
.peoplelist ul li a img {
  width: 100%;
  height: auto;
  margin-bottom: 2.5rem;
}
.peoplelist ul li a h4 {
  font-size: 2.4rem;
  font-weight: bold;
}

.slug-officevoice .office__box h3 {
  color: #000;
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.3rem;
}

.slug-profile_office #block__b .headblock__slide .headblock__slide__content .wp-block-post-title {
  letter-spacing: 2.5rem;
}
.slug-profile_office .read {
  margin-bottom: 10rem;
}

.no-entry {
  font-size: 2.4rem;
  text-align: center;
  margin-bottom: 13rem;
  font-weight: bold;
}

.slug-about .title__name {
  color: #fff;
}
.slug-about .wp-block-post-title {
  display: none;
}

.slug-enterprise .title__name {
  color: #fff;
}
.slug-enterprise .wp-block-post-title {
  display: none;
}

.slug-profile_message .title__name span {
  color: #fff;
}
.slug-profile_message .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-enterprise_land .title__name span {
  color: #fff;
}
.slug-enterprise_land .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-enterprise_loading .title__name span {
  color: #fff;
}
.slug-enterprise_loading .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-enterprise_warehouse .title__name span {
  color: #fff;
}
.slug-enterprise_warehouse .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-recruit .title__name span {
  color: #fff;
}
.slug-recruit .wp-block-post-title {
  display: none;
}

.slug-recruit_about .title__name {
  color: #fff;
}
.slug-recruit_about .title__name span {
  color: #fff;
}
.slug-recruit_about .wp-block-post-title {
  color: #fff;
  letter-spacing: 1rem;
}

.slug-profile_office .title__name span {
  color: #fff;
}
.slug-profile_office .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-officevoice .title__name span {
  color: #fff;
}
.slug-officevoice .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-recruit_welfare .title__name span {
  color: #fff;
}
.slug-recruit_welfare .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-qa .title__name {
  color: #fff;
}
.slug-qa .title__name span {
  color: #fff;
}
.slug-qa .wp-block-post-title {
  letter-spacing: 1rem;
}

.slug-recruit_list .title__name {
  color: #fff;
}
.slug-recruit_list .title__name span {
  color: #fff;
}
.slug-recruit_list .wp-block-post-title {
  text-align: center;
  letter-spacing: 1rem;
}

.slug-csr .title__name {
  color: #fff;
}
.slug-csr .title__name span {
  color: #fff;
  display: none;
}
.slug-csr .wp-block-post-title {
  display: none;
  text-align: center;
  letter-spacing: 1rem;
}

.slug-people01 .title__name, .slug-people02 .title__name, .slug-people03 .title__name {
  width: 100%;
  color: #fff;
}
.slug-people01 .title__name span, .slug-people02 .title__name span, .slug-people03 .title__name span {
  color: #fff;
}
.slug-people01 .wp-block-post-title, .slug-people02 .wp-block-post-title, .slug-people03 .wp-block-post-title {
  text-align: center;
  letter-spacing: 1rem;
}
.slug-people01 #block__b .headblock__slide .headblock__slide__content .wp-block-post-title, .slug-people02 #block__b .headblock__slide .headblock__slide__content .wp-block-post-title, .slug-people03 #block__b .headblock__slide .headblock__slide__content .wp-block-post-title {
  width: 100%;
  letter-spacing: 2.5rem;
  color: #fff;
}

/* 全体幅 */
.contact__contentarea {
  width: 100%;
  max-width: 1145px;
  margin: 0 auto;
  padding: 0 20px;
}

/* フォーム本体 */
.contactarea {
  width: 100%;
}
.contactarea .privacy {
  margin-top: 10rem;
  margin-bottom: 8rem;
}
.contactarea .privacy h4 {
  font-size: 2.6rem;
  font-family: "din-2014", sans-serif;
  font-weight: 800;
  font-style: normal;
}
.contactarea .privacy a {
  text-decoration: underline;
  color: #0057AA;
  margin-bottom: 3rem;
}

/* 1行（dl）を横並びにする */
.contactarea dl {
  display: grid;
  grid-template-columns: 200px 1fr; /* 左ラベル / 右フォーム */
  gap: 16px;
  align-items: center;
  margin: 0 0 18px;
}

/* ラベル */
.contactarea dt {
  margin: 0;
  font-weight: 700;
  line-height: 1.4;
}

/* 必須バッジ */
.contactarea dt span {
  display: inline-block;
  margin-left: 10px;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  background: #e60012;
  color: #fff;
  vertical-align: middle;
  display: none;
}

/* 入力側 */
.contactarea dd {
  margin: 0;
}

/* 入力共通（CF7の出力に効くように幅広く当てる） */
.contactarea input[type=text],
.contactarea input[type=tel],
.contactarea input[type=email],
.contactarea textarea,
.contactarea .wpcf7-form-control {
  width: 100%;
  box-sizing: border-box;
  padding: 14px 16px;
  border-radius: 10px;
  border: 2px solid #2a76c9;
  outline: none;
  font-size: 16px;
  background: #F4F4F4;
}

/* テキストエリア */
.contactarea textarea {
  min-height: 160px;
  resize: vertical;
}

/* フォーカス時（スクショみたいに青く） */
.contactarea input:focus,
.contactarea textarea:focus {
  box-shadow: 0 0 0 4px rgba(42, 118, 201, 0.15);
}

/* ボタンエリア */
.sectionlink {
  margin-top: 26px;
  display: flex;
  gap: 16px;
  justify-content: center;
}

/* 送信ボタン（CF7が input[type=submit] を吐く） */
.sectionlink input[type=submit] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 999px;
  padding: 14px 34px;
  font-weight: 700;
  cursor: pointer;
  background: #6f7780;
  color: #fff;
  border: 2px solid #2a76c9;
}

/* リセット（もし使うなら） */
.sectionlink input[type=reset] {
  width: 20rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 999px;
  padding: 14px 34px;
  font-weight: 700;
  cursor: pointer;
  background: #6f7780;
  color: #fff;
  border: 2px solid #2a76c9;
}

/* スマホ：縦並び */
@media (max-width: 768px) {
  .contactarea dl {
    grid-template-columns: 1fr;
    gap: 8px;
    align-items: start;
  }
}
.contactarea .wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.contactarea .wpcf7-list-item {
  margin: 0;
}

.contactarea .wpcf7-list-item label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.wpcf7-form-control.wpcf7-checkbox.wpcf7-validates-as-required {
  border: none !important;
  background: none;
}

.slug-contact {
  margin-top: 6.836rem;
  border-top: 2px solid #0057AA;
}
.slug-contact .contentwrap h2 {
  color: #000;
  font-size: 2.6rem;
  margin-bottom: 5rem;
  text-align: left;
}

.sectionlink.bw.leftbtn p {
  display: flex;
  gap: 2rem;
  justify-content: center;
}
.sectionlink.bw.leftbtn p input[type=submit] {
  width: 20rem;
}
.sectionlink.bw.leftbtn p .wpcf7-spinner {
  display: none;
}

#wpcf7cpcnf {
  position: relative;
  width: 100%;
  padding-top: 4rem;
}
#wpcf7cpcnf:before {
  content: "入力内容確認";
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  top: -2rem;
  left: 0;
}
#wpcf7cpcnf table {
  width: 100%;
}
#wpcf7cpcnf tr {
  width: 100%;
}
#wpcf7cpcnf tr:nth-child(1):before {
  content: "お問合せ項目";
}
#wpcf7cpcnf tr:nth-child(2):before {
  content: "お問合せ内容";
}
#wpcf7cpcnf tr:nth-child(3):before {
  content: "企業／団体";
}
#wpcf7cpcnf tr:nth-child(4):before {
  content: "部署／役職";
}
#wpcf7cpcnf tr:nth-child(5):before {
  content: "お名前";
}
#wpcf7cpcnf tr:nth-child(6):before {
  content: "フリガナ（お名前）";
}
#wpcf7cpcnf tr:nth-child(7):before {
  content: "電話番号";
}
#wpcf7cpcnf tr:nth-child(8):before {
  content: "メールアドレス";
}
#wpcf7cpcnf tr:nth-child(9):before {
  content: "メールアドレス(確認用)";
}
#wpcf7cpcnf tr:nth-child(10):before {
  content: "ご住所";
}
#wpcf7cpcnf tr:nth-child(11):before {
  content: "個人情報保護方針";
}
#wpcf7cpcnf tr th {
  display: none;
}
#wpcf7cpcnf tr td {
  width: 100%;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #0057AA;
  margin-bottom: 3rem;
  display: block;
}

.wpcf7cp-btns {
  display: flex;
  justify-content: center;
}

button {
  width: 20rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 999px;
  padding: 14px 34px;
  font-weight: 700;
  cursor: pointer;
  background: #6f7780;
  color: #fff;
  border: 2px solid #2a76c9;
}/*# sourceMappingURL=style.css.map */