body {
  position: relative;
  overflow-x: hidden;
}

@font-face {
  font-family: "Poppins-SemiBold";
  src: url("../fonts/Poppins-SemiBold.woff2") format("woff2"), url("../fonts/Poppins-SemiBold.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Poppins-Medium";
  src: url("../fonts/Poppins-Medium.woff2") format("woff2"), url("../fonts/Poppins-Medium.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Barlow-Regular";
  src: url("../fonts/Barlow-Regular.woff2") format("woff2"), url("../fonts/Barlow-Regular.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "noto-sans-jp R";
  src: url("../fonts/NotoSansJP-Regular.woff2") format("woff2"), url("../fonts/NotoSansJP-Regular.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "noto-serif-jp R";
  src: url("../fonts/NotoSerifJP-Regular.woff2") format("woff2"), url("../fonts/NotoSerifJP-Regular.otf.woff") format("woff");
  font-display: swap;
}
.site-top-space {
  width: 100%;
  height: clamp(6rem, 12.5vw, 8rem);
}

.wrapper {
  font-size: clamp(1.5rem, 3.125vw, 1.8rem);
  font-family: "noto-sans-jp R", "Yu Gothic", "YuGothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif;
}

.sect-headline-primary {
  font-size: clamp(2.4rem, 5vw, 3.2rem);
  color: #1a1a1a;
  font-family: "noto-sans-jp R", "Yu Gothic", "YuGothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif;
  text-align: center;
}
.sect-headline-primary .string {
  position: relative;
  padding-bottom: 0.8rem;
}

.sect-headline-primary-sub {
  width: 100%;
  margin-bottom: clamp(1.2rem, 2.5vw, 2.4rem);
  padding-bottom: 1.2rem;
  text-align: center;
}

.string {
  display: inline-block;
}

.sect-headline-secondary {
  font-size: clamp(1.8rem, 3.75vw, 2.4rem);
}

.en-text {
  display: inline-block;
  font-size: clamp(1.4rem, 2.9166666667vw, 1.7rem);
  color: #E57E33;
  font-family: "Poppins-Medium", "Yu Gothic", "YuGothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif;
  text-transform: capitalize;
  letter-spacing: 0.025rem;
}

.design-text-heading {
  display: flex;
  font-size: clamp(6.4rem, 13.3333333333vw, 16rem);
  color: #161B43;
  font-family: "Poppins-SemiBold", "Yu Gothic", "YuGothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif;
  line-height: 1;
  letter-spacing: 0;
}
@media screen and (min-width: 1025px) {
  .design-text-heading {
    position: absolute;
  }
}
@media screen and (max-width: 1024px) {
  .design-text-heading {
    position: relative;
    padding-top: 1.2rem;
    padding-left: 1.6rem;
  }
}
.design-text-heading .string.accent {
  color: #2C3686;
  text-transform: capitalize;
}
.design-text-heading .string.normal {
  color: #D2D6ED;
}

.sp-none {
  display: block;
}
@media screen and (max-width: 600px) {
  .sp-none {
    display: none;
  }
}

.tab-disp {
  display: none;
}
@media screen and (max-width: 836px) {
  .tab-disp {
    display: block;
  }
}

.tab-none {
  display: block;
}
@media screen and (max-width: 836px) {
  .tab-none {
    display: none;
  }
}

.pc-none {
  display: none;
}
@media screen and (max-width: 600px) {
  .pc-none {
    display: block;
  }
}

.btn-primary .link {
  position: relative;
  max-width: clamp(30rem, 62.5vw, 36rem);
  width: 100%;
  padding: 1.6rem 4.8rem;
  background-color: #4251c1;
  text-align: center;
}
.btn-primary .link::before, .btn-primary .link::after {
  content: "";
  position: absolute;
  right: 2.4rem;
  display: inline-block;
  height: 0.2rem;
  background-color: white;
}
.btn-primary .link::before {
  top: 50%;
  width: 1.2rem;
  rotate: 45deg;
  translate: 0 -50%;
}
.btn-primary .link::after {
  top: 57%;
  width: 4.8rem;
  translate: -4% -50%;
}
@media screen and (max-width: 600px) {
  .btn-primary .link::after {
    top: 60%;
  }
}
.btn-primary .link .string {
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 600px) {
  .btn-primary .link {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
  }
}

.ly-inner-area {
  padding-top: clamp(4.8rem, 10vw, 14.4rem);
  padding-bottom: clamp(4.8rem, 10vw, 14.4rem);
}

.ly-inner-area-narrow {
  padding-top: clamp(4.8rem, 10vw, 9.6rem);
  padding-bottom: clamp(4.8rem, 10vw, 9.6rem);
}

.ly-inner-area-btm {
  padding-bottom: clamp(4.8rem, 10vw, 14.4rem);
}

.ly-fixed {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 1440px) {
  .ly-fixed {
    padding-right: 1.6rem;
    padding-left: 1.6rem;
  }
}

.ly-fixed-large {
  max-width: 1600px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 1600px) {
  .ly-fixed-large {
    padding-right: 1.6rem;
    padding-left: 1.6rem;
  }
}

.ly-space-btm-block-narrow {
  padding-bottom: clamp(3.6rem, 7.5vw, 7.2rem);
}
.ly-space-btm-block-narrow-mgn {
  margin-bottom: clamp(3.6rem, 7.5vw, 7.2rem);
}
.ly-space-btm-block-wide {
  padding-bottom: clamp(4.8rem, 10vw, 14.4rem);
}
.ly-space-btm-block-wide-mgn {
  margin-bottom: clamp(4.8rem, 10vw, 14.4rem);
}

.table {
  max-width: 100%;
  width: 100%;
}
.table .t-head .head-row,
.table .t-body .body-row {
  display: flex;
}
.table .t-header,
.table .t-data {
  padding: 1.8rem 0;
  width: 100%;
}
@media screen and (max-width: 600px) {
  .table .t-header,
.table .t-data {
    padding: 1.2rem 0;
  }
}

.btn-contact {
  text-align: center;
}
.btn-contact .link {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 2.4rem 4.8rem;
  background-color: #e57e33;
}
.btn-contact .link::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.6rem);
  right: 2.4rem;
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  border-top: 0.2rem solid #fff;
  border-right: 0.2rem solid #fff;
  rotate: 45deg;
}
.btn-contact .link .mark {
  width: clamp(3.6rem, 7.5vw, 5rem);
  height: 100%;
  margin-right: 1.2rem;
}
.btn-contact .link .mark .icon {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.btn-contact .link .string {
  font-size: clamp(1.6rem, 3.3333333333vw, 2rem);
  color: #fff;
  line-height: 1;
}

.sect-banner-contact {
  position: relative;
  padding-top: clamp(4.8rem, 10vw, 9.6rem);
  z-index: 0;
}
.sect-banner-contact::before, .sect-banner-contact::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 35%;
}
.sect-banner-contact::before {
  background-color: #2c3686;
  z-index: -3;
}
.sect-banner-contact::after {
  background-image: radial-gradient(#fff 0%, transparent 20%);
  background-size: 1.4rem 1.4rem;
  opacity: 0.25;
  z-index: -1;
}

.area-banner-contact .inner-banner-contact {
  padding: 2.4rem;
  background-color: #f3f3f3;
}
.area-banner-contact .inner-banner-contact .head .heading .title-main {
  text-align: center;
}
.area-banner-contact .inner-banner-contact .head .heading .title-main .string {
  padding-bottom: 2.4rem;
  font-size: clamp(1.7rem, 3.5416666667vw, 2.1rem);
}
.area-banner-contact .inner-banner-contact .body .contents {
  display: flex;
  gap: clamp(2.4rem, 5vw, 4.8rem);
  padding-bottom: 2.4rem;
}
.area-banner-contact .inner-banner-contact .body .contents .btn-contact,
.area-banner-contact .inner-banner-contact .body .contents .contact-info {
  width: 100%;
}
.area-banner-contact .inner-banner-contact .body .contents .btn-contact {
  max-width: 50%;
}
.area-banner-contact .inner-banner-contact .body .contents .btn-contact .link {
  justify-content: center;
  padding-right: clamp(2.4rem, 5vw, 0.48rem);
  padding-left: clamp(2.4rem, 5vw, 0.48rem);
}
@media screen and (max-width: 600px) {
  .area-banner-contact .inner-banner-contact .body .contents .btn-contact .link::before {
    right: 1.2rem;
  }
  .area-banner-contact .inner-banner-contact .body .contents .btn-contact .link .mark {
    margin-right: 0.8rem;
  }
  .area-banner-contact .inner-banner-contact .body .contents .btn-contact .link .string {
    letter-spacing: 0.15rem;
  }
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info {
  display: flex;
  align-items: center;
  flex-direction: column;
  max-width: 50%;
  padding: 1.2rem clamp(2.4rem, 5vw, 0.48rem);
  border: 1px solid #2C3686;
  background-color: white;
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info .tel .link {
  display: flex;
  align-items: center;
  line-height: 1;
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info .tel .link .mark {
  width: clamp(2.2rem, 4.5833333333vw, 3rem);
  height: clamp(2.2rem, 4.5833333333vw, 3rem);
  margin-right: 1.2rem;
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info .tel .link .mark .icon {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info .tel .link .number {
  font-size: clamp(2.2rem, 4.5833333333vw, 4rem);
  color: #2C3686;
  font-family: "Poppins-SemiBold", "Yu Gothic", "YuGothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif;
  font-weight: bold;
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info .desc-office-hours {
  color: #2C3686;
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info .desc-office-hours .d-item {
  display: flex;
  justify-content: center;
  line-height: 1;
}
.area-banner-contact .inner-banner-contact .body .contents .contact-info .desc-office-hours .d-item .d-title {
  padding-right: 2.4rem;
}
@media screen and (max-width: 836px) {
  .area-banner-contact .inner-banner-contact .body .contents {
    flex-direction: column;
  }
  .area-banner-contact .inner-banner-contact .body .contents .btn-contact,
.area-banner-contact .inner-banner-contact .body .contents .contact-info {
    max-width: 100%;
  }
}
.area-banner-contact .inner-banner-contact .foot .company-info .site-title {
  text-align: center;
}
.area-banner-contact .inner-banner-contact .foot .company-info .site-title .logo {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: clamp(24rem, 50vw, 34rem);
  margin-right: 1.2rem;
}
.area-banner-contact .inner-banner-contact .foot .company-info .site-title .logo .icon {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.area-banner-contact .inner-banner-contact .foot .company-info .location {
  display: flex;
  font-size: clamp(1.1rem, 2.2916666667vw, 1.3rem);
}
.area-banner-contact .inner-banner-contact .foot .company-info .location .postal-code {
  padding-right: clamp(0.6rem, 1.25vw, 1.2rem);
}
@media screen and (max-width: 600px) {
  .area-banner-contact .inner-banner-contact .foot .company-info .location .postal-code {
    max-width: 35%;
    width: 100%;
  }
}
@media screen and (max-width: 600px) {
  .area-banner-contact .inner-banner-contact .foot .company-info .location .address {
    max-width: 65%;
    width: 100%;
  }
}
@media screen and (max-width: 836px) {
  .area-banner-contact .inner-banner-contact {
    flex-direction: column;
  }
  .area-banner-contact .inner-banner-contact .head,
.area-banner-contact .inner-banner-contact .body {
    max-width: 100%;
  }
}

.site-header {
  position: relative;
  width: 100%;
  height: 100%;
}

.area-header {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: clamp(6rem, 12.5vw, 8rem);
  background-color: #2c3686;
  z-index: 823;
}
.area-header .header-bar {
  width: 100%;
  padding-left: 2.4rem;
  padding-right: 2.4rem;
}
@media screen and (max-width: 600px) {
  .area-header .header-bar {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
  }
}
.area-header .header-bar .contents {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
}
.area-header .header-bar .contents .company-site .site-title {
  position: relative;
  z-index: 6050;
}
.area-header .header-bar .contents .company-site .site-title .link {
  display: flex;
  align-items: center;
  font-size: clamp(1.8rem, 3.75vw, 2.2rem);
  color: #fff;
}
.area-header .header-bar .contents .company-site .site-title .link .logo {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: clamp(20rem, 41.6666666667vw, 30rem);
}
@media screen and (min-width: 1025px) {
  .area-header .header-bar .contents .company-site .site-title .link .logo {
    margin-left: 2.4rem;
  }
}
.area-header .header-bar .contents .company-site .site-title .link .logo .icon {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.area-header .header-bar .contents .navi-icon {
  position: relative;
  display: none;
  width: 48px;
  height: 48px;
  margin: 0;
  padding: 0;
  border: 0;
  background-color: transparent;
  z-index: 731;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .area-header .header-bar .contents .navi-icon {
    display: block;
  }
}
.area-header .header-bar .contents .navi-icon > .bar {
  position: absolute;
  left: calc(50% - 18px);
  display: inline-block;
  width: 36px;
  height: 2px;
  background-color: #888888;
  transition: 0.4s;
}
.area-header .header-bar .contents .navi-icon > .bar:nth-of-type(1) {
  top: 12px;
}
.area-header .header-bar .contents .navi-icon > .bar:nth-of-type(2) {
  top: calc(50% - 1px);
}
.area-header .header-bar .contents .navi-icon > .bar:nth-of-type(3) {
  bottom: 12px;
  transform-origin: right;
}
.area-header .header-bar .contents .navi-icon.is_open .bar:nth-of-type(1) {
  top: calc(50% - 1px);
  rotate: 45deg;
}
.area-header .header-bar .contents .navi-icon.is_open .bar:nth-of-type(2) {
  top: calc(50% - 1px);
  rotate: 315deg;
}
.area-header .header-bar .contents .navi-icon.is_open .bar:nth-of-type(3) {
  scale: 0;
}
.area-header .header-bar .contents .global-navi {
  z-index: 73;
}
.area-header .header-bar .contents .global-navi .list-navi {
  display: flex;
  width: 100%;
}
.area-header .header-bar .contents .global-navi .list-navi .item .link {
  position: relative;
  width: 100%;
}
.area-header .header-bar .contents .global-navi .list-navi .item .link .string {
  display: inline-block;
  width: 100%;
  padding: 0.8rem clamp(1.2rem, 2.5vw, 2.4rem);
  font-size: clamp(1.5rem, 3.125vw, 1.6rem);
  color: #fff;
}
.area-header .header-bar .contents .global-navi .list-navi .item .link::before {
  content: "";
  position: absolute;
  left: calc(50% - 2.4rem);
  bottom: 0;
  width: 4.8rem;
  height: 0.2rem;
  background-color: white;
  scale: 0;
  transform-origin: center center;
  transition: 0.2s;
}
.area-header .header-bar .contents .global-navi .list-navi .item .link:hover::before {
  scale: 1;
}
.area-header .header-bar .contents .global-navi.is_open {
  left: 0;
}
@media screen and (max-width: 1024px) {
  .area-header .header-bar .contents .global-navi {
    position: absolute;
    top: clamp(6rem, 12.5vw, 8rem);
    left: -120%;
    width: 100%;
    height: calc(100vh - clamp(6rem, 12.5vw, 8rem));
    transition: 0.4s;
  }
  .area-header .header-bar .contents .global-navi .list-navi {
    flex-direction: column;
    width: 100%;
    height: 100%;
    background-color: black;
  }
  .area-header .header-bar .contents .global-navi .list-navi .item .link {
    padding: 1.6rem;
    border-bottom: 1px solid #888;
  }
  .area-header .header-bar .contents .global-navi .list-navi .item .link .string {
    position: relative;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    border-left: 0.6rem solid #2C3686;
    color: #fff;
  }
  .area-header .header-bar .contents .global-navi .list-navi .item .link .string::before {
    content: "";
    position: absolute;
    top: calc(50% - 0.8rem);
    right: 1.6rem;
    width: 1.6rem;
    height: 1.6rem;
    background-color: transparent;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    rotate: 45deg;
  }
}
.area-header.up_move {
  position: fixed;
  width: 100%;
  -webkit-animation: upAnime 0.5s forwards;
          animation: upAnime 0.5s forwards;
}
@-webkit-keyframes upAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}
@keyframes upAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}
.area-header.down_move {
  position: fixed;
  width: 100%;
  -webkit-animation: downAnime 0.5s forwards;
          animation: downAnime 0.5s forwards;
}
.area-header.not_blend_mode {
  mix-blend-mode: normal;
}
@-webkit-keyframes downAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes downAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.area-side-navi-contact-pc {
  position: fixed;
  top: calc(clamp(6rem, 12.5vw, 8rem) + 2.4rem);
  right: 0;
  max-width: 64px;
  width: 100%;
  z-index: 9999;
}
@media screen and (max-width: 1024px) {
  .area-side-navi-contact-pc {
    display: none;
  }
}
.area-side-navi-contact-pc .list-navi {
  width: 100%;
}
.area-side-navi-contact-pc .list-navi .item {
  width: 100%;
}
.area-side-navi-contact-pc .list-navi .item:not(:last-of-type) {
  padding-bottom: 2.4rem;
}
.area-side-navi-contact-pc .list-navi .item .link {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  border-radius: 1.6rem 0 0 1.6rem;
  color: #fff;
  text-align: center;
}
.area-side-navi-contact-pc .list-navi .item .link .text {
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  font-size: 1.4rem;
  font-family: "Yu Gothic", "YuGothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  text-orientation: upright;
  line-height: 1;
}
.area-side-navi-contact-pc .list-navi .item .link .text > .symbol {
  display: inline-block;
}
.area-side-navi-contact-pc .list-navi .item .link.contact {
  background-color: #e57e33;
}
.area-side-navi-contact-pc .list-navi .item .link.document {
  background-color: #4251c1;
}

.area-side-navi-contact-sp {
  position: fixed;
  left: 0;
  bottom: 0;
  display: none;
  width: 100%;
  z-index: 9999;
}
@media screen and (max-width: 1024px) {
  .area-side-navi-contact-sp {
    display: block;
  }
}
.area-side-navi-contact-sp .list-navi {
  display: flex;
}
.area-side-navi-contact-sp .list-navi .item {
  width: 100%;
}
.area-side-navi-contact-sp .list-navi .item .link {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 1.2rem 0;
  color: #fff;
}
.area-side-navi-contact-sp .list-navi .item .link .icon {
  display: inline-block;
  padding-right: 0.8rem;
  font-size: 24px;
}
.area-side-navi-contact-sp .list-navi .item .link .text {
  font-size: 1.4rem;
  text-transform: uppercase;
}
.area-side-navi-contact-sp .list-navi .item .link.contact {
  background-color: #e57e33;
}
.area-side-navi-contact-sp .list-navi .item .link.document {
  background-color: #161b43;
}

.footer-area {
  position: relative;
}
.footer-area::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../images/bg-footer-min.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: -2;
}
@media screen and (max-width: 600px) {
  .footer-area::before {
    background-image: url(../images/bg-footer-sp-min.jpg);
  }
}
.footer-area .contents {
  padding-top: clamp(3.6rem, 7.5vw, 7.2rem);
  padding-bottom: clamp(3.6rem, 7.5vw, 7.2rem);
  color: #fff;
}
.footer-area .contents .contents-inner {
  display: flex;
  justify-content: space-between;
  gap: 2.4rem;
}
.footer-area .contents .contents-inner .company .company-site .site-title .link {
  display: flex;
  align-items: center;
  font-size: clamp(2rem, 4.1666666667vw, 2.4rem);
  color: #fff;
}
.footer-area .contents .contents-inner .company .company-site .site-title .link .logo {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  max-width: clamp(24rem, 50vw, 34rem);
  width: 100%;
  margin-right: 1.2rem;
  margin-bottom: 1.2rem;
}
.footer-area .contents .contents-inner .company .company-site .site-title .link .logo .icon {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer-area .contents .contents-inner .company .company-info .location {
  display: flex;
  flex-direction: column;
}
.footer-area .contents .contents-inner .company .company-info .location .postal-code {
  padding-right: 2.4rem;
}
.footer-area .contents .contents-inner .company .company-info .desc-contact {
  display: flex;
}
.footer-area .contents .contents-inner .company .company-info .desc-contact .d-item {
  display: flex;
}
@media screen and (min-width: 601px) {
  .footer-area .contents .contents-inner .company .company-info .desc-contact .d-item:not(:last-of-type) {
    padding-right: 1.2rem;
  }
}
.footer-area .contents .contents-inner .company .company-info .desc-contact .d-item .d-title .string {
  display: inline-block;
  padding-right: 0.8rem;
  text-transform: uppercase;
}
@media screen and (max-width: 1024px) and (min-width: 837px) {
  .footer-area .contents .contents-inner .company .company-info .desc-contact .d-item {
    flex-direction: column;
  }
}
.footer-area .contents .contents-inner .group-company .headline {
  max-width: 240px;
  width: 100%;
  height: 72px;
  margin-bottom: 2.4rem;
}
.footer-area .contents .contents-inner .group-company .headline .image {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer-area .contents .contents-inner .group-company .list-company .item .string {
  color: #fff;
}
.footer-area .contents .contents-inner .group-company .list-company .item:not(:last-of-type) {
  padding-bottom: 0.8rem;
}
@media screen and (max-width: 836px) {
  .footer-area .contents .contents-inner {
    flex-direction: column;
    align-items: center;
  }
  .footer-area .contents .contents-inner .company,
.footer-area .contents .contents-inner .group-company {
    max-width: 100%;
  }
  .footer-area .contents .contents-inner .company {
    width: 100%;
  }
  .footer-area .contents .contents-inner .company .company-site .site-title .link {
    width: 100%;
    justify-content: center;
  }
  .footer-area .contents .contents-inner .company .company-info .location {
    justify-content: center;
  }
  .footer-area .contents .contents-inner .company .company-info .location .postal-code,
.footer-area .contents .contents-inner .company .company-info .location .address {
    max-width: 80%;
    width: 100%;
    margin: 0 auto;
  }
  .footer-area .contents .contents-inner .company .company-info .desc-contact {
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer-area .contents .contents-inner .company .company-info .desc-contact .d-item {
    max-width: 40%;
    width: 100%;
  }
  .footer-area .contents .contents-inner .group-company {
    align-items: center;
  }
  .footer-area .contents .contents-inner .group-company .headline {
    margin-right: auto;
    margin-left: auto;
  }
  .footer-area .contents .contents-inner .group-company .list-company {
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem;
  }
}
@media screen and (max-width: 600px) {
  .footer-area .contents .contents-inner .company .company-info .location .postal-code,
.footer-area .contents .contents-inner .company .company-info .location .address {
    max-width: 100%;
  }
  .footer-area .contents .contents-inner .company .company-info .desc-contact .d-item {
    max-width: 50%;
  }
  .footer-area .contents .contents-inner .group-company .list-company {
    display: grid;
    gap: 0.8rem;
    grid-template-columns: repeat(2, 1fr);
  }
  .footer-area .contents .contents-inner .group-company .list-company .item {
    font-size: 1.4rem;
  }
}
.footer-area .copyright {
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
  background-color: white;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .footer-area .copyright {
    padding-bottom: 7.2rem;
  }
}
.footer-area .copyright .sentence {
  color: #555;
}
.footer-area .copyright .sentence .mark {
  font-family: "Arial", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Helvetica Neue", "Helvetica", "Meiryo", sans-serif;
}
.section {
  position: relative;
  overflow: hidden;
}
.section_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip: rect(0, auto, auto, 0);
  z-index: -20;
}
.section_bg::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: url(../images/bg-site.png) center/cover no-repeat;
  z-index: -2;
}
/*# sourceMappingURL=common.css.map */