html,
body,
div,
span,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
address,
em,
img,
strong,
sub,
sup,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
form,
label,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-style: normal;
  vertical-align: baseline;
  background: transparent;
}

html {
  -webkit-text-size-adjust: 100%;
}

img,
svg {
  line-height: 0;
  vertical-align: top;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input,
select,
label {
  vertical-align: top;
}

input,
textarea,
button {
  font-family: inherit;
  font-size: inherit;
  outline: none;
  resize: none;
}

button {
  cursor: pointer;
}

*,
::before,
::after {
  box-sizing: border-box;
}

body {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  line-height: 1.75;
}

@media (min-width: 901px) {
  body {
    font-size: 1.25vw;
  }
}

@media (min-width: 1280px) {
  body {
    font-size: 16px;
  }
}

@media (min-width: 1680px) {
  body {
    font-size: 18.7px;
  }
}

body.is-modal-open {
  overflow: hidden;
}

a:not(.c-txt-link) {
  text-decoration: none;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .c-txt-link:hover {
    text-decoration: underline;
  }
}

ul:not(.c-basic-list) {
  list-style: none;
}

img.ofi {
  height: 100%;
  width: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

img:not(.ofi) {
  height: auto;
  max-width: 100%;
}

@media (min-width: 768px) {
  img:not(.ofi) {
    width: 100%;
  }
}

svg {
  fill: currentColor;
  width: 100%;
  height: auto;
}

@media (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .page__wrapper {
    overflow: hidden;
  }
  body:not(#top) .page__wrapper {
    padding-top: 58px;
  }
}

@media all and (-ms-high-contrast: none) {
  .page__wrapper {
    overflow-x: hidden;
  }
}

.c-sec {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (max-width: 767px) {
  .c-sec {
    padding: 60px 4vw;
  }
}

@media all and (-ms-high-contrast: none) {
  .c-sec > * {
    min-height: 0%;
    max-width: 100%;
  }
}

.c-sec__heading {
  position: relative;
  color: #005bac;
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.075em;
  padding-top: 50px;
  padding-bottom: 22px;
  text-align: center;
  font-family: "Montserrat", sans-serif;
}

@media (min-width: 768px) {
  .c-sec__heading {
    font-size: 1.29em;
    padding-top: 3.69em;
    padding-bottom: 1.8em;
  }
}

.c-sec__heading--jp {
  font-size: 1.18em;
  font-family: "Noto Sans JP", sans-serif;
}

.c-sec__heading::before {
  position: absolute;
  top: 0;
  left: calc(50% - 1px);
  background-color: #2bcdf4;
  height: 35px;
  content: "";
  width: 2px;
}

@media (min-width: 768px) {
  .c-sec__heading::before {
    height: 2.92em;
  }
}

.c-btn,
.footer__pagetop {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  border-radius: 18.5px;
  color: #005bac;
  height: 37px;
  width: 170px;
  overflow: hidden;
}

@media (min-width: 768px) {
  .c-btn,
  .footer__pagetop {
    border-radius: 1.13em;
    height: 2.25em;
    width: 9.88em;
  }
}

.c-btn::before,
.footer__pagetop::before {
  position: absolute;
  background: linear-gradient(to right, #005bac, #2bcdf4);
  top: calc(50% - 85px);
  left: calc(50% - 85px);
  height: 170px;
  width: 170px;
  content: "";
  transition: 0.4s linear;
}

@media (min-width: 768px) {
  .c-btn::before,
  .footer__pagetop::before {
    top: calc(50% - 4.94em);
    left: calc(50% - 4.94em);
    height: 9.88em;
    width: 9.88em;
  }
}

.c-btn span,
.footer__pagetop span {
  position: relative;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-left: 0.1em;
  z-index: 1;
}

@media (min-width: 768px) {
  .c-btn span,
  .footer__pagetop span {
    font-size: 0.75em;
  }
}

.c-btn--big {
  width: 17.63em;
}

.c-btn--big::before {
  top: calc(50% - 8.81em);
  left: calc(50% - 8.81em);
  height: 17.63em;
  width: 17.63em;
}

.c-btn--form {
  width: 240px;
}

@media (min-width: 768px) {
  .c-btn--form {
    width: 15em;
  }
}

@media (min-width: 1280px) {
  .c-btn--form {
    width: 12.5em;
  }
}

.c-btn--form::before {
  top: calc(50% - 120px);
  left: calc(50% - 120px);
  height: 240px;
  width: 240px;
}

@media (min-width: 1280px) {
  .c-btn--form::before {
    top: calc(50% - 7.5em);
    left: calc(50% - 7.5em);
    height: 15em;
    width: 15em;
  }
}

@media (min-width: 1280px) {
  .c-btn--form::before {
    top: calc(50% - 6.25em);
    left: calc(50% - 6.25em);
    height: 12.5em;
    width: 12.5em;
  }
}

.c-btn--jp span {
  letter-spacing: 0;
  font-size: 12px;
}

@media (min-width: 768px) {
  .c-btn--jp span {
    font-size: 0.75em;
  }
}

.c-btn--ex svg {
  position: relative;
  z-index: 1;
  margin-left: 0.44em;
  width: 1.06em;
  height: 0.75em;
  transform: translateY(-1px);
}

.c-btn::after,
.footer__pagetop::after {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: 1px;
  background-color: #fff;
  border-radius: 18.5px;
  content: "";
  transition: 0.4s linear;
}

@media (min-width: 768px) {
  .c-btn::after,
  .footer__pagetop::after {
    border-radius: 1.13em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .c-btn:hover::before,
  .footer__pagetop:hover::before {
    transform: rotate(180deg);
  }
  .c-btn:hover::after,
  .footer__pagetop:hover::after {
    transform: scale(0.99);
  }
}

.c-big-btn {
  position: relative;
  background-color: #005bac;
  border: 2px solid #005bac;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 90px;
  width: 92vw;
  border-radius: 45px;
}

@media (min-width: 768px) {
  .c-big-btn {
    height: 6.5em;
    width: 29.88em;
    border-radius: 3.25em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .c-big-btn {
    transition: background-color 0.4s ease;
  }
  .c-big-btn:hover {
    background-color: transparent;
    color: #005bac;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .c-big-btn.anime {
    transition: background-color 0.4s ease,
      transform 0.3s cubic-bezier(0.6, 0.03, 0.63, 0.98),
      opacity 0.3s cubic-bezier(0.74, 0.2, 0.25, 1) !important;
  }
}

.c-big-btn span {
  font-weight: bold;
  line-height: 1.81;
  text-align: center;
  font-size: 0.86em;
}

@media (min-width: 768px) {
  .c-big-btn span {
    font-size: 0.86em;
  }
}

.c-big-btn svg {
  position: absolute;
  top: calc(50% - 0.38em);
  right: 10px;
  width: 1.06em;
  height: 0.75em;
}

@media (min-width: 768px) {
  .c-big-btn svg {
    right: 1.88em;
  }
}

.c-inner {
  width: 95vw;
}

@media (min-width: 768px) {
  .c-inner {
    width: 92vw;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  .c-inner {
    max-width: 1248px;
  }
}

@media (min-width: 1680px) {
  .c-inner {
    width: 1456px;
  }
}

.c-container {
  margin: 0 auto;
  width: 92vw;
}

@media (min-width: 768px) {
  body#top .c-container {
    width: 93.59%;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  body#top .c-container {
    max-width: 1198px;
  }
}

@media (min-width: 768px) {
  body:not(#top) .c-container {
    width: 93.59%;
    max-width: 1098px;
  }
}

@media (min-width: 1680px) {
  .c-container {
    width: 1280px !important;
    max-width: 1280px !important;
  }
}

.c-box__contents,
.c-box-link__contents,
#history .prize__contents,
#pinnar .scene__pic,
#pinnar .function__inner,
#nipponhodai .function__inner,
#pinnar .local-nav,
#lockar .local-nav,
#biki .local-nav,
#lockar .merit__contents,
#lockar .howto__sec,
#lockar .price__contents,
#biki .lead__container,
#biki .review__contents,
body#alliance .solution__contents,
body#alliance .case__contents,
.strength__contents,
.news__list,
#recruit .movie__contents.topics__contents,
.recruit-search__container,
.recruit-about__msg,
#interview .interview__contents.topics__contents,
#careers .interview__contents.topics__contents,
#graduates .interview__contents.topics__contents,
#staff .interview__contents.topics__contents,
#movie .movie__contents.topics__contents,
.prof__contents,
.overview__list,
.overseas__list,
.chart__fig,
.board__list {
  width: 92vw;
}

@media (min-width: 768px) {
  .c-box__contents,
  .c-box-link__contents,
  #history .prize__contents,
  #pinnar .scene__pic,
  #pinnar .function__inner,
  #nipponhodai .function__inner,
  #pinnar .local-nav,
  #lockar .local-nav,
  #biki .local-nav,
  #lockar .merit__contents,
  #lockar .howto__sec,
  #lockar .price__contents,
  #biki .lead__container,
  #biki .review__contents,
  body#alliance .solution__contents,
  body#alliance .case__contents,
  .strength__contents,
  .news__list,
  #recruit .movie__contents.topics__contents,
  .recruit-search__container,
  .recruit-about__msg,
  #interview .interview__contents.topics__contents,
  #careers .interview__contents.topics__contents,
  #graduates .interview__contents.topics__contents,
  #staff .interview__contents.topics__contents,
  #movie .movie__contents.topics__contents,
  .prof__contents,
  .overview__list,
  .overseas__list,
  .chart__fig,
  .board__list {
    width: 93.59%;
    max-width: 1098px;
  }
}

@media (min-width: 1680px) {
  .c-box__contents,
  .c-box-link__contents,
  #history .prize__contents,
  #pinnar .scene__pic,
  #pinnar .function__inner,
  #nipponhodai .function__inner,
  #pinnar .local-nav,
  #lockar .local-nav,
  #biki .local-nav,
  #lockar .merit__contents,
  #lockar .howto__sec,
  #lockar .price__contents,
  #biki .lead__container,
  #biki .review__contents,
  body#alliance .solution__contents,
  body#alliance .case__contents,
  .strength__contents,
  .news__list,
  #recruit .movie__contents.topics__contents,
  .recruit-search__container,
  .recruit-about__msg,
  #interview .interview__contents.topics__contents,
  #careers .interview__contents.topics__contents,
  #graduates .interview__contents.topics__contents,
  #staff .interview__contents.topics__contents,
  #movie .movie__contents.topics__contents,
  .prof__contents,
  .overview__list,
  .overseas__list,
  .chart__fig,
  .board__list {
    width: 1280px !important;
    max-width: 1280px !important;
  }
}

@media (min-width: 768px) {
  .c-cols {
    display: flex;
    width: 92vw;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  .c-cols {
    max-width: 1248px;
  }
}

@media (min-width: 1680px) {
  .c-cols {
    width: 1456px;
  }
}

.c-cols__item {
  background-color: #fafafa;
  color: #000;
  display: flex;
  flex-direction: column;
  padding: 15px;
}

@media (min-width: 901px) {
  .c-cols__item {
    padding: 1.88em 1.38em;
    width: calc(25% - 10px);
  }
}

.c-cols__item .c-btn,
.c-cols__item .footer__pagetop {
  align-self: center;
}

@media (max-width: 767px) {
  .c-cols__item .c-btn,
  .c-cols__item .footer__pagetop {
    margin-top: 10px;
    height: 30px;
    width: 110px;
  }
  .c-cols__item .c-btn span,
  .c-cols__item .footer__pagetop span {
    font-size: 11px;
  }
}

@media (min-width: 768px) {
  .c-cols__item .c-btn,
  .c-cols__item .footer__pagetop {
    margin-top: 1em;
  }
}

.c-cols__cat {
  border-left: 3px solid #005bac;
  font-weight: bold;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.2em;
  padding-left: 0.75em;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (min-width: 768px) {
  .c-cols__cat {
    font-size: 0.86em;
    padding-left: 0.95em;
  }
}

.c-cols__pic {
  margin-top: 12px;
}

@media (min-width: 768px) {
  .c-cols__pic {
    margin-top: 0.94em;
  }
}

@media all and (-ms-high-contrast: none) {
  .c-cols__pic {
    min-height: 0%;
  }
}

.c-cols__ttl {
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
  font-size: 12px;
  margin-top: 0.75em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

@media (min-width: 768px) {
  .c-cols__ttl {
    font-size: 0.86em;
    margin-top: 0.88em;
    height: 3.43em;
  }
}

.thanks__ttl,
#lockar .howto__sec h2,
#lockar .price__sec h2,
.movie-pickup__ttl,
.board__name,
.offices__ttl,
.popup__name {
  font-weight: 500;
  font-size: 17px;
}

@media (min-width: 768px) {
  .thanks__ttl,
  #lockar .howto__sec h2,
  #lockar .price__sec h2,
  .movie-pickup__ttl,
  .board__name,
  .offices__ttl,
  .popup__name {
    font-size: 1.34em;
  }
}

.hero-info__ttl,
.c-box__details h1,
.c-box__details > span,
#pinnar .outline__details h2,
#lockar .outline__details h2,
#biki .outline__details h2,
#lockar .merit__ttl,
#lockar .howto__ttl,
#lockar .price__tourist-item h3,
#lockar .price__ttl,
body#alliance .case-item__heading,
body#alliance .article__body p.case-item__list-ttl,
.recruit-search__ttl,
.interview-item__heading {
  color: #005bac;
  font-weight: 500;
  font-size: 16px;
}

@media (min-width: 768px) {
  .hero-info__ttl,
  .c-box__details h1,
  .c-box__details > span,
  #pinnar .outline__details h2,
  #lockar .outline__details h2,
  #biki .outline__details h2,
  #lockar .merit__ttl,
  #lockar .howto__ttl,
  #lockar .price__tourist-item h3,
  #lockar .price__ttl,
  body#alliance .case-item__heading,
  body#alliance .article__body p.case-item__list-ttl,
  .recruit-search__ttl,
  .interview-item__heading {
    font-size: 1.06em;
    line-height: 1.41;
    letter-spacing: 0.01em;
  }
}

.thanks__txt,
.hero-info__txt,
.col__item--3 .col__txt,
.c-box__details p,
#history .prize__list dt,
#history .prize__list dd,
#lockar .merit__txt,
#lockar .howto__txt,
#lockar .price__txt,
#biki .lead__inner,
#biki .howto__item p,
body#alliance .case-item__txt,
body#alliance .case-item__list-item dt,
body#alliance .case-item__list-item dd,
body#alliance .case__bnr p,
.strength__sec p,
.strength-potential__app-type h3,
.tag-cloud__inner a,
.news__date,
.news__cat,
.news__ttl,
.recruit-about__president,
.recruit-about__txt,
.recruit-page__link,
.interview-item__name,
.movie-pickup__date,
.movie-pickup__time,
#staff .flex2col dl,
.article__head-inner time,
.article__terms,
.article__body p,
.text-page__body p,
.article__body ul,
.text-page__body ul,
.article__body ol,
.text-page__body ol,
.article__body th,
.article__body td,
.text-page__body th,
.text-page__body td,
.text-page__body dt,
.text-page__body dd.list__head,
.legal__d-list dd,
.contact__txt,
.form__item dt,
.form__item dd,
.contact__privacy,
.overview__item dt,
.overseas__item dt,
.overview__item dd,
.overseas__item dd,
.board__pos,
.initiatives__item p,
#profile .history dt,
#profile .history dd p,
.offices-head__details p,
.offices__txt,
.airport__list,
.overseas__lead,
.popup__prof {
  font-size: 13px;
  text-align: justify;
}

@media (min-width: 768px) {
  .thanks__txt,
  .hero-info__txt,
  .col__item--3 .col__txt,
  .c-box__details p,
  #history .prize__list dt,
  #history .prize__list dd,
  #lockar .merit__txt,
  #lockar .howto__txt,
  #lockar .price__txt,
  #biki .lead__inner,
  #biki .howto__item p,
  body#alliance .case-item__txt,
  body#alliance .case-item__list-item dt,
  body#alliance .case-item__list-item dd,
  body#alliance .case__bnr p,
  .strength__sec p,
  .strength-potential__app-type h3,
  .tag-cloud__inner a,
  .news__date,
  .news__cat,
  .news__ttl,
  .recruit-about__president,
  .recruit-about__txt,
  .recruit-page__link,
  .interview-item__name,
  .movie-pickup__date,
  .movie-pickup__time,
  #staff .flex2col dl,
  .article__head-inner time,
  .article__terms,
  .article__body p,
  .text-page__body p,
  .article__body ul,
  .text-page__body ul,
  .article__body ol,
  .text-page__body ol,
  .article__body th,
  .article__body td,
  .text-page__body th,
  .text-page__body td,
  .text-page__body dt,
  .text-page__body dd.list__head,
  .legal__d-list dd,
  .contact__txt,
  .form__item dt,
  .form__item dd,
  .contact__privacy,
  .overview__item dt,
  .overseas__item dt,
  .overview__item dd,
  .overseas__item dd,
  .board__pos,
  .initiatives__item p,
  #profile .history dt,
  #profile .history dd p,
  .offices-head__details p,
  .offices__txt,
  .airport__list,
  .overseas__lead,
  .popup__prof {
    font-size: 0.86em;
    line-height: 1.75;
  }
}

.anime {
  transition: transform 0.3s cubic-bezier(0.6, 0.03, 0.63, 0.98),
    opacity 0.3s cubic-bezier(0.74, 0.2, 0.25, 1);
}

.a-fade {
  opacity: 0;
}

.a-fade-btm {
  opacity: 0;
  transform: translateY(1.88em);
}

.fixed__header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 11;
  transition: opacity 0.4s ease;
  height: 58px;
}

@media (min-width: 768px) {
  .fixed__header {
    height: 3.75em;
  }
}

.fixed__header.fixed,
body:not(#top) .fixed__header {
  background-color: #fff;
  position: fixed;
}

.fixed__header.fixed.transparent,
body:not(#top) .fixed__header.transparent {
  background-color: transparent;
}

.fixed__header.hide {
  opacity: 0;
}

.header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 5;
}

@media (min-width: 768px) {
  .header {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    height: 7.5em;
    padding-bottom: 1.13em;
  }
}

body:not(#top) .header {
  border-bottom: 1px solid #eee;
}

@media (min-width: 768px) {
  body:not(#top) .header {
    height: 6em;
    padding-bottom: 0;
  }
}

.header__logo {
  color: #fff;
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: 159px;
}

@media (min-width: 768px) {
  .header__logo {
    top: 1.13em;
    width: 13.75em;
    transition: top 0.2s ease;
  }
}

.fixed .header__logo {
  color: #005bac;
}

@media (min-width: 768px) {
  .fixed .header__logo {
    top: 0.5em !important;
    width: 13.75em !important;
  }
  body:not(#top) .fixed .header__logo {
    width: 12.06em !important;
  }
}

body:not(#top) .header__logo {
  color: #005bac;
}

@media (min-width: 768px) {
  body:not(#top) .header__logo {
    top: 1em;
    width: 12.06em;
    height: 2.69em;
  }
}

.header__logo.white {
  color: #fff !important;
}

@media all and (-ms-high-contrast: none) {
  .header__logo svg {
    width: 13.75em;
    height: 3.06em;
  }
}

.header__btn,
.search__close {
  position: absolute;
  cursor: pointer;
  height: 58px;
  width: 54px;
  top: 0;
  right: 0;
}

@media (min-width: 768px) {
  .header__btn,
  .search__close {
    top: 1.69em;
    left: 2.31em;
    height: 2.13em;
    width: 2.5em;
    transition: top 0.2s ease;
  }
}

.header__btn span,
.search__close span {
  position: absolute;
  top: 35%;
  left: 0;
  right: 0;
  background-color: #fff;
  display: block;
  transition: all 0.4s ease;
  margin: 0 auto;
  height: 2px;
  width: 24px;
}

@media (min-width: 768px) {
  .header__btn span,
  .search__close span {
    top: 0.63em;
    width: 1.25em;
  }
}

.header__btn span:nth-child(2),
.search__close span:nth-child(2) {
  top: calc(50% - 1px);
}

.header__btn span:nth-child(3),
.search__close span:nth-child(3) {
  top: auto;
  bottom: 35%;
}

@media (min-width: 768px) {
  .header__btn span:nth-child(3),
  .search__close span:nth-child(3) {
    bottom: 0.63em;
  }
}

body:not(#top) .header__btn span,
body:not(#top) .search__close span {
  background-color: #005bac;
}

@media (min-width: 768px) {
  .fixed .header__btn,
  .fixed .search__close {
    top: 0.75em !important;
  }
}

.fixed .header__btn span,
.fixed .search__close span {
  background-color: #005bac;
}

@media (min-width: 768px) {
  body:not(#top) .header__btn,
  body:not(#top) .search__close {
    top: 1.25em;
  }
}

.header__btn.act span,
.act.search__close span {
  background-color: #fff !important;
}

.header__btn.act span:nth-child(1),
.act.search__close span:nth-child(1) {
  top: calc(50% - 1px);
  transform: rotate(45deg);
}

.header__btn.act span:nth-child(2),
.act.search__close span:nth-child(2) {
  opacity: 0;
}

.header__btn.act span:nth-child(3),
.act.search__close span:nth-child(3) {
  top: calc(50% - 1px);
  bottom: auto;
  transform: rotate(-45deg);
}

.header__btn.hide,
.hide.search__close {
  display: none;
}

@media (max-width: 767px) {
  .header-nav {
    display: none;
  }
}

@media (min-width: 768px) {
  .header-nav__list {
    display: flex;
    position: relative;
    padding-left: 2em;
  }
}

.header-nav__item > a {
  position: relative;
  color: #fff;
  display: block;
  line-height: 1;
  font-weight: 500;
}

@media (min-width: 768px) {
  .header-nav__item > a {
    font-size: 0.75em;
    padding: 0 0.67em 0.5em;
  }
}

body:not(#top) .header-nav__item > a {
  color: #005bac;
}

@media (min-width: 768px) {
  .header-nav__item > a::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    height: 2px;
    content: "";
    transform-origin: center;
    transform: scaleX(0);
    transition: 0.3s ease;
  }
  body:not(#top) .header-nav__item > a::after {
    background-color: #005bac;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .header-nav__item > a:hover::after {
    transform: scaleX(1);
  }
}

@media (min-width: 768px) {
  .header-nav__item:not(:first-child) {
    margin-left: 3.25em;
  }
}

.header-nav__dropdown {
  position: absolute;
  top: 100%;
  left: -4em;
  right: -6em;
  background-color: rgba(255, 255, 255, 0.7);
  padding: 0 0 0 2.5em;
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  transition: padding 0.3s ease;
}

.header-nav__dropdown.show {
  padding: 1px 0 0.69em 2.5em;
}

.header-nav__dropdown--company {
  padding-right: 2.5em !important;
}

.header-nav__dropdown--service {
  padding-right: 2.5em !important;
}

.header-nav__subitem a {
  position: relative;
  color: #005bac;
  display: block;
  line-height: 0;
  font-size: 0.69em;
  font-weight: 500;
  padding-bottom: 0;
  margin-top: 0;
  margin-right: 3.18em;
  transition: 0.3s ease;
}

.show .header-nav__subitem a {
  line-height: 1;
  padding-bottom: 0.45em;
  margin-top: 1em;
}

.header-nav__subitem a::after {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #005bac;
  height: 1px;
  content: "";
  transform-origin: center;
  transform: scaleX(0);
  transition: 0.3s ease;
}

@media (min-width: 1680px) {
  .header-nav__subitem a::after {
    height: 2px;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .header-nav__subitem a:hover::after {
    transform: scaleX(1);
  }
}

.other-nav {
  display: flex;
  align-items: center;
}

@media (max-width: 767px) {
  .other-nav {
    margin-top: 30px;
    justify-content: center;
  }
}

@media (min-width: 768px) {
  .other-nav {
    position: absolute;
    top: 1.88em;
    right: 1.69em;
    transition: top 0.2s ease;
  }
}

@media (min-width: 768px) {
  .fixed .other-nav {
    top: 0.94em !important;
  }
}

@media (min-width: 768px) {
  body:not(#top) .other-nav {
    top: 1.44em;
  }
}

.sns__list {
  display: none;
}

.sns__item:not(:first-child) {
  margin-left: 10px;
}

@media (min-width: 768px) {
  .sns__item:not(:first-child) {
    margin-left: 0.63em;
  }
}

.sns__item a {
  color: #fff;
  display: block;
  line-height: 0;
  width: 40px;
}

@media (min-width: 768px) {
  .sns__item a {
    width: 1.56em;
  }
}

.fixed .sns__item a {
  color: #005bac;
}

body:not(#top) .sns__item a {
  color: #005bac;
}

.white .sns__item a {
  color: #fff !important;
}

@media all and (-ms-high-contrast: none) {
  .sns__item svg {
    height: 1.56em;
    width: 1.56em;
  }
}

.lang__btn {
  border-right: 2px solid #fff;
  color: #fff;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  line-height: 2.5;
  padding-right: 1.25em;
  margin-left: 1.25em;
  position: relative;
  font-family: "Montserrat", sans-serif;
}

@media (min-width: 901px) {
  .lang__btn {
    font-size: 0.75em;
  }
}

.fixed .lang__btn {
  color: #005bac;
  border-color: #005bac;
}

body:not(#top) .lang__btn {
  color: #005bac;
  border-color: #005bac;
}

.white .lang__btn {
  color: #fff !important;
  border-color: #fff !important;
}

.lang__btn select {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  padding-left: 0;
  border: none;
  font-weight: 500;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0;
}

@media (max-width: 767px) {
  .lang__btn select {
    font-size: 16px;
  }
}

.fixed .lang__btn select {
  color: #005bac;
}

.lang__btn select::-ms-expand {
  display: none;
}

.search__btn {
  color: #fff;
  cursor: pointer;
  line-height: 0;
  width: 30px;
  margin-left: 1.44em;
}

@media (min-width: 768px) {
  .search__btn {
    width: 1.44em;
    margin-left: 1.44em;
  }
}

.fixed .search__btn {
  color: #005bac;
}

body:not(#top) .search__btn {
  color: #005bac;
}

.white .search__btn {
  color: #fff !important;
}

@media all and (-ms-high-contrast: none) {
  .search__btn svg {
    height: 1.44em;
    width: 1.44em;
  }
}

.footer {
  position: relative;
}

.footer__contents {
  position: relative;
  background: url("../img_hc/common/bg_footer_sp.jpg") no-repeat right center;
  background-size: cover;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 34px;
}

@media (max-width: 767px) {
  .footer__contents {
    padding: 34px 0 180px;
  }
}

@media (max-width: 767px) and (max-width: 374px) {
  .footer__contents {
    background-position: right -20px center;
  }
}

@media (min-width: 375px) {
  .footer__contents {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (min-width: 768px) {
  .footer__contents {
    background-image: url("../img_hc/common/bg_footer.jpg");
    background-position: right center;
    padding-top: 2.69em;
    height: 36.88em;
  }
}

@media (min-width: 1680px) {
  .footer__contents {
    height: 687px;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .footer__contents a:hover {
    text-decoration: underline;
  }
}

.footer__contents .sns__list {
  display: none;
}

@media (max-width: 767px) {
  .footer__contents .sns__list {
    position: absolute;
    bottom: 150px;
    left: 0;
    right: 0;
    margin: 0 auto;
    justify-content: center;
  }
}

@media (min-width: 768px) {
  .footer__contents .sns__list {
    align-self: flex-start;
    margin-left: auto;
  }
}

.footer__contents .sns__item a {
  color: #353535;
}

.footer__logo {
  line-height: 0;
  width: 154px;
}

@media (min-width: 768px) {
  .footer__logo {
    width: 16.44em;
  }
}

.footer-nav {
  margin-top: 37px;
}

@media (max-width: 767px) {
  .footer-nav {
    column-count: 2;
  }
}

@media (min-width: 768px) {
  .footer-nav {
    position: relative;
    display: flex;
    margin-top: 2.25em;
    width: 90vw;
  }
}

@media (min-width: 901px) {
  .footer-nav {
    width: 78.67%;
  }
}

@media (min-width: 1280px) {
  .footer-nav {
    width: 1007px;
  }
}

@media (min-width: 1680px) {
  .footer-nav {
    width: 1175px;
  }
}

.footer-nav__col {
  display: flex;
  flex-direction: column;
}

@media (max-width: 767px) {
  .footer-nav__col {
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 30px;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .footer-nav__col:not(:first-child) {
    margin-left: 30px;
  }
}

@media (min-width: 901px) {
  .footer-nav__col:nth-child(2) {
    margin-left: 3.75em;
  }
  .footer-nav__col:nth-child(3) {
    margin-left: 5.38em;
  }
  .footer-nav__col:nth-child(4) {
    margin-left: 5.5em;
  }
}

.footer-nav__ttl {
  color: #353535;
}

.footer-nav__ttl a {
  font-weight: bold;
  color: #353535;
  font-size: 11px;
}

@media (min-width: 768px) {
  .footer-nav__ttl a {
    font-size: 0.75em;
  }
}

.footer-nav__ttl::before {
  content: "\25A0";
  margin-right: 0.5em;
  font-size: 12px;
}

@media (min-width: 768px) {
  .footer-nav__ttl::before {
    font-size: 0.75em;
  }
}

@media (min-width: 768px) {
  .footer-nav__ttl + .footer-nav__list {
    margin-top: 1.56em;
  }
}

.footer-nav__ttl:last-child {
  margin-top: 30px;
}

@media (min-width: 901px) {
  .footer-nav__ttl:last-child {
    margin-top: auto;
  }
}

.footer-nav__item {
  line-height: 1.61;
}

.footer-nav__item a {
  color: #353535;
  font-size: 11px;
}

@media (max-width: 374px) {
  .footer-nav__item a {
    font-size: 10px;
  }
}

@media (min-width: 768px) {
  .footer-nav__item a {
    font-size: 0.75em;
  }
}

.footer-nav__item.footer-nav__item--child::before {
  content: "|";
  margin: 0 0.5em;
  font-size: 12px;
}

@media (min-width: 768px) {
  .footer-nav__item.footer-nav__item--child::before {
    font-size: 0.75em;
  }
}

.footer-nav__item.footer-nav__item--grandchild::before {
  content: "-";
  margin: 0 0.5em 0 1.5em;
  font-size: 12px;
}

@media (min-width: 768px) {
  .footer-nav__item.footer-nav__item--grandchild::before {
    font-size: 0.75em;
  }
}

.footer__pmark {
  display: block;
  width: 50px;
}

@media (max-width: 767px) {
  .footer__pmark {
    position: absolute;
    bottom: 80px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}

@media (min-width: 768px) {
  .footer__pmark {
    position: absolute;
    right: 0;
    top: 4.06em;
    width: 4.5em;
  }
}

@media (min-width: 901px) {
  .footer__pmark {
    top: auto;
    bottom: 0;
  }
}

.footer-subnav,
.footer-overseas {
  padding: 10px 8vw;
}

@media (min-width: 768px) {
  .footer-subnav,
  .footer-overseas {
    padding: 1em 0.63em;
  }
}

@media (min-width: 901px) {
  .footer-subnav,
  .footer-overseas {
    padding: 1em;
  }
}

.footer-overseas {
  background-color: #fafafa;
}

.footer-subnav__list,
.footer-overseas__list {
  display: flex;
  justify-content: center;
}

@media (max-width: 767px) {
  .footer-subnav__list,
  .footer-overseas__list {
    flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  .footer-subnav__list,
  .footer-overseas__list {
    justify-content: center;
  }
}

.footer-subnav__item,
.footer-overseas__item {
  display: flex;
}

@media (max-width: 767px) {
  .footer-subnav__item,
  .footer-overseas__item {
    margin: 5px 0;
    width: 50%;
  }
  .footer-subnav__item a,
  .footer-overseas__item a {
    width: 100%;
  }
  .footer-subnav__item:nth-child(odd) a,
  .footer-overseas__item:nth-child(odd) a {
    padding-right: 1em;
    text-align: right;
  }
  .footer-subnav__item:nth-child(even),
  .footer-overseas__item:nth-child(even) {
    border-left: 1px solid #000;
  }
  .footer-subnav__item:nth-child(even) a,
  .footer-overseas__item:nth-child(even) a {
    padding-left: 1em;
  }
}

@media (min-width: 768px) {
  .footer-subnav__item,
  .footer-overseas__item {
    align-items: center;
  }
  .footer-subnav__item:not(:first-child)::before,
  .footer-overseas__item:not(:first-child)::before {
    font-size: 0.69em;
    line-height: 1;
    content: "\FF5C";
    margin: 0 1em;
  }
}

@media (min-width: 901px) {
  .footer-subnav__item:not(:first-child)::before,
  .footer-overseas__item:not(:first-child)::before {
    font-size: 0.75em;
  }
}

.footer-subnav__item a,
.footer-overseas__item a {
  color: #000;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .footer-subnav__item a:hover,
  .footer-overseas__item a:hover {
    text-decoration: underline;
  }
}

.footer-subnav__item > a,
.footer-subnav__item span,
.footer-overseas__item > a,
.footer-overseas__item span {
  font-size: 10px;
  line-height: 1;
}

@media (min-width: 375px) {
  .footer-subnav__item > a,
  .footer-subnav__item span,
  .footer-overseas__item > a,
  .footer-overseas__item span {
    font-size: 11px;
  }
}

@media (min-width: 768px) {
  .footer-subnav__item > a,
  .footer-subnav__item span,
  .footer-overseas__item > a,
  .footer-overseas__item span {
    font-size: 0.69em;
  }
}

@media (min-width: 901px) {
  .footer-subnav__item > a,
  .footer-subnav__item span,
  .footer-overseas__item > a,
  .footer-overseas__item span {
    font-size: 0.75em;
  }
}

.footer__copyright {
  background-color: #353535;
  color: #fff;
  text-align: center;
  font-size: 10px;
  line-height: 3.92;
  letter-spacing: 0.1em;
}

@media (min-width: 375px) {
  .footer__copyright {
    font-size: 11px;
  }
}

@media (min-width: 768px) {
  .footer__copyright {
    font-size: 0.75em;
    line-height: 3.92;
  }
}

.footer__pagetop {
  flex-direction: column;
  border-radius: 50%;
  height: 40px;
  width: 40px;
  position: fixed;
  bottom: 40px;
  right: 4vw;
  padding-bottom: 4px;
  transform: translateZ(0);
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none;
  z-index: 9;
}

.footer__pagetop.show {
  opacity: 1;
  pointer-events: auto;
}

.footer__pagetop::before {
  top: 0;
  left: 0;
  border-radius: 50%;
  height: 40px;
  width: 40px;
}

.footer__pagetop span {
  font-size: 10px;
}

.footer__pagetop::after {
  border-radius: 50% !important;
}

.contact-area {
  margin-top: 60px;
}

@media (max-width: 767px) {
  .contact-area {
    padding: 0 4vw 60px;
  }
}

@media (min-width: 768px) {
  .contact-area {
    margin-top: 8.13em;
    padding-bottom: 8.13em;
  }
}

@media (min-width: 768px) {
  body:not(#top) .contact-area {
    margin-top: 5.63em;
    padding-bottom: 5.63em;
  }
}

@media (min-width: 768px) {
  .contact-area__icon {
    width: 2.5em;
  }
}

.contact-area__txt {
  font-size: 13px;
  margin-top: 20px;
  text-align: justify;
}

@media (min-width: 768px) {
  .contact-area__txt {
    font-size: 0.86em;
    line-height: 1.75;
    margin-top: 2.19em;
    text-align: center;
    width: 40.85em;
  }
}

.contact-area__btn {
  margin-top: 35px;
}

@media (min-width: 768px) {
  .contact-area__btn {
    margin-top: 2.13em;
  }
}

@media (min-width: 768px) {
  .contact-area2 {
    margin-top: 6.25em;
    padding-bottom: 6.25em;
  }
}

@media (min-width: 768px) {
  .contact-area2__txt {
    font-size: 0.86em;
    text-align: center;
  }
}

.contact-area2__contents {
  margin-top: 30px;
}

@media (min-width: 768px) {
  .contact-area2__contents {
    display: flex;
    justify-content: space-between;
    margin-top: 3em;
    width: 90vw;
  }
}

@media (min-width: 901px) {
  .contact-area2__contents {
    width: 68.63em;
  }
}

.contact-area2__item {
  background-color: #fafafa;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: center;
  padding: 20px;
}

@media (max-width: 767px) {
  .contact-area2__item:not(:first-child) {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  .contact-area2__item {
    padding: 30px 15px;
    width: 49.18%;
  }
}

@media (min-width: 901px) {
  .contact-area2__item {
    height: 13.25em;
    padding: 0 10%;
  }
}

.contact-area2__item p:not(.contact-area2__tel) {
  font-size: 13px;
  line-height: 1.75;
  margin-left: 1em;
}

@media (min-width: 768px) {
  .contact-area2__item p:not(.contact-area2__tel) {
    font-size: 0.86em;
  }
}

.contact-area2__item .c-btn,
.contact-area2__item .footer__pagetop {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .contact-area2__item .c-btn,
  .contact-area2__item .footer__pagetop {
    margin-top: 1.88em;
  }
}

.contact-area2__icon--mail {
  width: 41px;
}

@media (min-width: 768px) {
  .contact-area2__icon--mail {
    width: 2.94em !important;
    height: auto;
  }
}

.contact-area2__icon--tel {
  width: 45px;
}

@media (min-width: 768px) {
  .contact-area2__icon--tel {
    width: 2.81em !important;
    height: auto;
  }
}

.contact-area2__tel {
  color: #005bac;
  display: flex;
  align-items: center;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .contact-area2__tel {
    margin-top: 1.88em;
  }
}

.contact-area2__tel span {
  font-weight: 500;
  line-height: 1;
}

@media (min-width: 768px) {
  .contact-area2__tel span {
    font-size: 0.86em;
  }
}

.contact-area2__tel b {
  line-height: 1;
  margin-left: 0.32em;
}

@media (min-width: 768px) {
  .contact-area2__tel b {
    font-size: 1.38em;
  }
}

@media (min-width: 768px) {
  .thanks__container {
    padding-bottom: 6.25em;
  }
}

.thanks__txt {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .thanks__txt {
    text-align: center;
    margin-top: 2em;
  }
}

.full-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(27, 27, 27, 0.7);
  overflow: auto;
  opacity: 0;
  pointer-events: none;
  padding: 80px 5vw;
  transition: opacity 0.4s ease;
  z-index: 10;
}

.full-nav.show {
  opacity: 1;
  pointer-events: auto;
}

@media (min-width: 768px) {
  .full-nav {
    padding: 7.5em 0 6.25em;
  }
}

.full-nav a {
  color: #fff;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .full-nav a:hover {
    text-decoration: underline;
  }
}

.full-nav__contents {
  background-color: rgba(0, 0, 0, 0.9);
  padding: 20px 15px;
}

@media (min-width: 768px) {
  .full-nav__contents {
    margin: 0 auto;
    padding: 2.5em 5em;
    width: 78.13%;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  .full-nav__contents {
    max-width: 1000px;
  }
}

@media (min-width: 1680px) {
  .full-nav__contents {
    width: 1200px;
  }
}

.full-nav__row:not(:first-child) {
  margin-top: 25px;
}

@media (min-width: 768px) {
  .full-nav__row:not(:first-child) {
    margin-top: 2.5em;
  }
}

.full-nav__ttl {
  line-height: 1;
  font-size: 16px;
}

@media (max-width: 767px) {
  .full-nav__ttl {
    margin-bottom: 10px;
  }
}

@media (min-width: 768px) {
  .full-nav__ttl a {
    font-size: 1.5em;
    letter-spacing: 0.05em;
  }
}

.full-nav__list {
  display: flex;
}

@media (max-width: 900px) {
  .full-nav__list {
    flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  .full-nav__list {
    margin-top: 1.5em;
  }
}

@media (max-width: 900px) {
  .full-nav__item {
    margin: 5px 10px;
  }
}

@media (min-width: 901px) {
  .full-nav__item:not(:first-child) {
    margin-left: 2em;
  }
}

@media (min-width: 768px) {
  .full-nav__item a {
    font-size: 0.94em;
  }
}

.search {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(27, 27, 27, 0.7);
  transition: opacity 0.4s ease;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}

.search.show {
  opacity: 1;
  pointer-events: auto;
}

.search__box {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #fff;
  padding-bottom: 0.63em;
}

@media (max-width: 767px) {
  .search__box {
    position: relative;
    flex-direction: column;
    width: 80vw;
    border: none;
  }
}

@media (min-width: 768px) {
  .search__box {
    transform: translateY(0);
  }
}

.search__bg {
  position: absolute;
  top: 58px;
  left: 5vw;
  right: 5vw;
  background-color: rgba(0, 0, 0, 0.9);
  margin: 0 auto;
}

@media (max-width: 767px) {
  .search__bg {
    bottom: 58px;
  }
}

@media (min-width: 768px) {
  .search__bg {
    top: calc(50% + 0.94em);
    left: 0;
    right: 0;
    width: 78.13%;
    transform: translateY(-50%);
    height: 36.25em;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  .search__bg {
    max-width: 1000px;
  }
}

@media (min-width: 1680px) {
  .search__bg {
    width: 1200px;
  }
}

.search__icon {
  color: #fff;
  flex: 0 0 auto;
}

.search__icon svg {
  height: 1.5em;
  width: 1.5em;
}

@media (max-width: 767px) {
  .search__icon {
    position: absolute;
    top: 1.3em;
    left: 0.5em;
  }
}

@media (min-width: 768px) {
  .search__icon svg {
    height: 1.5em;
    width: 1.5em;
  }
}

.search__input {
  border: none;
  border-radius: 0;
  background-color: transparent;
  border-left: 1px solid #fff;
  padding-left: 1em;
  line-height: 1;
  color: #fff;
}

@media (max-width: 767px) {
  .search__input {
    font-size: 16px;
    line-height: 16px;
    padding-left: 40px !important;
    padding-top: 0;
    padding-bottom: 10px;
    border-left: none;
    border-bottom: 1px solid #fff;
    width: 100%;
  }
}

@media (min-width: 768px) {
  .search__input {
    height: 1em;
    font-size: 0.94em;
    margin-left: 1.13em;
    width: 27.5em;
  }
}

.search__submit {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  font-size: 11px;
  height: 2.43em;
  width: 80px;
  border-radius: 1.21em;
  margin-left: 0.71em;
}

@media (max-width: 767px) {
  .search__submit {
    margin-top: 2em;
  }
}

@media (min-width: 768px) {
  .search__submit {
    width: 10.57em;
  }
}

@media (min-width: 901px) {
  .search__submit {
    font-size: 0.69em;
  }
}

@media (min-width: 1680px) {
  .search__submit {
    font-size: 14px;
  }
}

.search__close {
  position: fixed;
  z-index: 15;
  opacity: 0;
  pointer-events: none;
}

.search__close.show {
  opacity: 1;
  pointer-events: auto;
}

.search__close span:nth-child(1) {
  top: calc(50% - 1px);
  transform: rotate(45deg);
}

.search__close span:nth-child(2) {
  opacity: 0;
}

.search__close span:nth-child(3) {
  top: calc(50% - 1px);
  bottom: auto;
  transform: rotate(-45deg);
}

.hero {
  position: relative;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

@media (min-width: 768px) {
  .hero {
    min-height: 500px;
  }
}

@media (min-width: 768px) and (orientation: portrait) {
  .hero {
    height: 100vw;
  }
}

.hero::after {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 121px;
  z-index: 2;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), transparent);
  content: "";
}

@media (max-width: 767px) {
  .hero::after {
    height: 121px;
  }
}

@media (min-width: 768px) {
  .hero::after {
    height: 10em;
  }
}

@media all and (-ms-high-contrast: none) {
  .hero > * {
    min-height: 0%;
    max-width: 100%;
  }
}

.hero__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.hero__item {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.hero__item:first-child {
  z-index: 1;
}

.hero__item.current {
  z-index: 2 !important;
}

.hero__item.current + .hero__item {
  z-index: 1;
}

.hero__pic {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: clip 0.5s ease-in-out;
}

.hero__pic.hero__pic--left {
  clip: rect(0, 50vw, 100vh, 0);
  position: absolute;
}

.hero__pic.hero__pic--left.hide {
  clip: rect(0, 50vw, 0, 0);
}

.hero__pic.hero__pic--right {
  clip: rect(0, 100vw, 100vh, 50vw);
  position: absolute;
}

.hero__pic.hero__pic--right.hide {
  clip: rect(100vh, 100vw, 100vh, 50vw);
}

.hero__inner {
  position: relative;
  z-index: 3;
}

@media (max-width: 767px) {
  .hero__inner {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 230px;
    height: 230px;
  }
}

@media (min-width: 768px) {
  .hero__inner {
    padding: 2.84em 0;
    text-align: center;
    width: 47.14em;
  }
}

.hero__inner::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  background-color: rgba(0, 0, 0, 0.5);
  transform: scaleX(0);
  transition: transform 0.4s ease 0.6s;
}

.hero__inner.show::before {
  transform: scaleX(1);
}

.hero__notice {
  position: relative;
  border: 3px solid #f00;
  background-color: #fff;
  z-index: 3;
  width: 92vw;
  margin-top: -40px;
  margin-bottom: 20px;
  padding: 0.75em;
}

@media (min-width: 768px) {
  .hero__notice {
    padding: 0.94em;
    margin-top: -3.75em;
    margin-bottom: 5em;
    width: 47.14em;
  }
}

.hero__notice .top-news__cat {
  background-color: #f00;
}

.hero__notice .top-news__ttl {
  font-size: 0.88em;
}

.hero__copy {
  position: relative;
  color: #fff;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.83;
  opacity: 0;
  transform: translateY(30px);
  transition: transform 0.4s ease 0.2s, opacity 0.4s ease 0.2s;
}

@media (max-width: 767px) {
  .hero__copy {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .hero__copy {
    font-size: 2.36em;
    line-height: 1;
  }
}

.show .hero__copy {
  opacity: 1;
  transform: translateY(0);
}

.hero__scroll {
  position: absolute;
  bottom: 0;
  left: 50%;
  color: #fff;
  letter-spacing: 0.15em;
  transform: translateX(-50%);
  font-weight: 500;
  font-family: "Montserrat", sans-serif;
  padding-bottom: 50px;
  z-index: 3;
}

@media (min-width: 768px) {
  .hero__scroll {
    font-size: 0.86em;
    padding-bottom: 4.96em;
  }
}

.hero__scroll::after {
  position: absolute;
  bottom: 0;
  left: calc(50% - 1px);
  background-color: #fff;
  width: 2px;
  content: "";
  height: 40px;
}

@media (min-width: 768px) {
  .hero__scroll::after {
    height: 4.13em;
  }
}

.hero-info {
  background-color: rgba(255, 255, 255, 0.85);
  position: fixed;
  bottom: 0;
  right: 0;
  padding: 20px 25px;
  z-index: 3;
  display: none;
  border-left: 4px solid #437fec;
  border-right: 4px solid #4cd9ed;
  width: 100%;
}

@media (min-width: 768px) {
  .hero-info {
    width: 21.44em;
    padding: 1.25em 1.44em 1.56em;
  }
}

@media (min-width: 768px) and (min-width: 901px) {
  .hero-info {
    min-width: 278px;
  }
}

@media (max-width: 767px) {
  .hero-info.show + .hero__scroll {
    display: none;
  }
}

.hero-info::before,
.hero-info::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 4px;
  width: 100%;
  content: "";
  background: linear-gradient(to right, #437fec 0%, #4cd9ed 75%, #4cd9ed 100%);
}

.hero-info::after {
  top: auto;
  bottom: 0;
  background: linear-gradient(to left, #4cd9ed 0%, #437fec 75%, #437fec 100%);
}

.hero-info.show {
  display: block;
}

.hero-info__ttl {
  font-weight: bold;
  color: #005bac;
}

.hero-info__txt {
  font-weight: bold;
  color: #005bac;
  line-height: 1.75;
  margin-top: 0.5em;
}

.hero-info__txt a {
  font-weight: bold;
  text-decoration: underline;
  color: #000;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .hero-info__txt a:hover {
    text-decoration: none;
  }
}

.hero-info__btn {
  position: relative;
  background: linear-gradient(to right, #437fec 0%, #4cd9ed 75%, #4cd9ed 100%);
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 0 1.88em 0 1.06em;
  height: 4.25em;
  margin-top: 0.63em;
}

.hero-info__btn::after {
  position: absolute;
  top: calc(50% - 0.25em);
  right: 0.94em;
  content: "";
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  height: 0.5em;
  width: 0.5em;
  transform: rotate(-45deg);
}

.hero-info__btn-txt1 {
  font-size: 0.75em;
  font-weight: 500;
  line-height: 1;
}

.hero-info__btn-txt2 {
  font-size: 1.38em;
  line-height: 1;
}

.hero-info__btn-txt2 span {
  font-size: 0.64em;
  margin-left: 0.5em;
}

.hero-info__btn-txt2.mt4 {
  margin-top: 0.18em;
}

#biz .hero-info__btn-txt2 {
  border-bottom: 2px solid #fcff00;
}

.hero-info__btn-txt3 {
  font-size: 0.63em;
  font-weight: 500;
  border-bottom: 2px solid #fcff00;
}

.hero-info__close {
  position: absolute;
  top: 0.94em;
  right: 0.63em;
  width: 1.13em;
  height: 1.13em;
  cursor: pointer;
}

@media (min-width: 768px) {
  .hero-info__close {
    top: 1.25em;
    right: 0.94em;
  }
}

.hero-info__close span {
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #005bac;
  top: calc(50% - 1px);
  transform: rotate(45deg);
}

.hero-info__close span + span {
  transform: rotate(-45deg);
}

.top-topics {
  padding: 60px 0;
}

@media (min-width: 768px) {
  .top-topics {
    padding: 5.31em 0 8.13em;
  }
}

.top-topics__ctrls,
.top-journal__ctrls {
  position: relative;
}

@media (max-width: 767px) {
  .top-topics__ctrls,
  .top-journal__ctrls {
    order: 1;
    margin-top: 20px;
  }
}

.top-topics__ctrls-inner,
.top-journal__ctrls-inner {
  display: flex;
}

@media (max-width: 767px) {
  .top-topics__ctrls-inner,
  .top-journal__ctrls-inner {
    justify-content: center;
  }
}

@media (min-width: 768px) {
  .top-topics__ctrls-inner,
  .top-journal__ctrls-inner {
    position: absolute;
    bottom: 0;
    right: 0;
    bottom: 1.88em;
    right: 3.75em;
  }
}

.top-topics__prev,
.top-topics__next,
.top-journal__next,
.top-journal__prev {
  color: #005bac;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  height: 30px;
  width: 30px;
}

.top-topics__prev svg,
.top-topics__next svg,
.top-journal__next svg,
.top-journal__prev svg {
  width: 10px;
}

@media (min-width: 768px) {
  .top-topics__prev,
  .top-topics__next,
  .top-journal__next,
  .top-journal__prev {
    height: 1.5em;
    width: 1.5em;
  }
  .top-topics__prev svg,
  .top-topics__next svg,
  .top-journal__next svg,
  .top-journal__prev svg {
    width: 0.5em;
  }
}

.top-topics__next,
.top-journal__next {
  margin-left: 20px;
}

@media (min-width: 768px) {
  .top-topics__next,
  .top-journal__next {
    margin-left: 0.63em;
  }
}

@media (min-width: 768px) {
  .top-journal {
    padding: 3.13em 0 8.13em;
  }
}

.top-journal__btn {
  margin-top: 40px;
}

@media (max-width: 767px) {
  .top-journal__btn {
    order: 1;
  }
}

@media (min-width: 768px) {
  .top-journal__btn {
    margin-top: 3.5em;
  }
}

.top-journal__foot {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 13px;
}

@media (min-width: 768px) {
  .top-journal__foot {
    align-items: center;
    padding-top: 1.25em;
    padding-left: 1.44em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .top-journal__foot {
    width: 92vw;
  }
}

.top-journal__foot-ttl {
  font-size: 12px;
}

@media (max-width: 767px) {
  .top-journal__foot-ttl {
    flex: 0 0 80px;
    padding-left: 1em;
    margin-top: 12px;
  }
}

@media (min-width: 768px) {
  .top-journal__foot-ttl {
    font-size: 0.75em;
    line-height: 3.08;
    margin-top: 1.67em;
    letter-spacing: 0.075em;
  }
}

.top-journal__categories {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .top-journal__categories {
    margin-left: 1em;
  }
}

.top-journal__cat {
  margin-top: 12px;
  margin-right: 12px;
}

@media (min-width: 768px) {
  .top-journal__cat {
    margin-top: 1.25em;
    margin-right: 1.44em;
  }
}

.top-journal__cat a {
  border-radius: 2px;
  border: 1px solid #000;
  color: #000;
  display: flex;
  font-size: 12px;
  justify-content: center;
  align-items: center;
  line-height: 1;
  height: 2.19em;
  min-width: 7em;
}

@media (min-width: 768px) {
  .top-journal__cat a {
    font-size: 0.75em;
    min-width: 11.83em;
    height: 3.08em;
    padding: 0 1em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .top-journal__cat a {
    transition: background-color 0.4s ease, border-color 0.4s ease;
  }
  .top-journal__cat a:hover {
    background-color: #005bac;
    border-color: #005bac;
    color: #fff;
  }
}

.top-news {
  background-color: #fafafa;
  padding: 60px 4vw;
}

@media (min-width: 768px) {
  .top-news {
    padding: 6.25em 0 7.13em;
  }
}

.top-news .top-news__item--notice {
  position: relative;
}

@media (min-width: 768px) {
  .top-news .top-news__item--notice {
    margin-top: 0.5em;
    margin-bottom: 3em;
  }
}

.top-news .top-news__item--notice::after {
  position: absolute;
  content: "";
  top: -1em;
  left: -1.5em;
  right: -1.5em;
  bottom: -1em;
  pointer-events: none;
  border: 3px solid #f00;
}

@media (min-width: 768px) {
  .top-news__list {
    width: 78.67%;
  }
}

@media (min-width: 1280px) {
  .top-news__list {
    width: 1007px;
  }
}

@media (min-width: 1680px) {
  .top-news__list {
    width: 1175px;
  }
}

.top-news__item {
  display: flex;
}

@media (max-width: 767px) {
  .top-news__item {
    flex-wrap: wrap;
  }
  .top-news__item:not(:first-child) {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  .top-news__item {
    align-items: flex-start;
  }
  .top-news__item:not(:first-child) {
    margin-top: 2.19em;
  }
}

.top-news__date {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.75;
  width: 7.13em;
}

@media (min-width: 768px) {
  .top-news__date {
    flex: 0 0 auto;
    font-size: 0.75em;
    line-height: 2;
    width: 8em;
  }
}

.top-news__cat {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #959595;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.75;
  width: 8.75em;
}

@media (max-width: 767px) {
  .top-news__cat {
    height: 1.75em;
  }
}

@media (min-width: 768px) {
  .top-news__cat {
    flex: 0 0 auto;
    font-size: 0.75em;
    line-height: 2;
    width: 10em;
  }
}

.top-news__item--notice .top-news__cat {
  background-color: #f00;
}

.top-news__ttl {
  font-size: 13px;
  color: #000;
}

@media (max-width: 767px) {
  .top-news__ttl {
    margin-top: 0.5em;
    text-align: justify;
  }
}

@media (min-width: 768px) {
  .top-news__ttl {
    font-size: 0.96em;
    margin-left: 1.94em;
    line-height: 1.56;
  }
}

.top-news__btn {
  margin-top: 35px;
}

@media (min-width: 768px) {
  .top-news__btn {
    margin-top: 3.5em;
  }
}

.top-recruit {
  background: url("../img_hc/top/pic_top_rec1.jpg") no-repeat center center;
  background-size: cover;
  margin-top: 60px;
  padding: 60px 40px;
}

@media (min-resolution: 2dppx) {
  .top-recruit {
    background-image: url("../img_hc/top/pic_top_rec1@2x.jpg");
  }
}

@media (min-width: 768px) {
  .top-recruit {
    margin: 5.25em auto 0;
    width: 93.59%;
    padding: 7.38em 0 6.88em;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  .top-recruit {
    max-width: 1198px;
  }
}

@media (min-width: 1680px) {
  .top-recruit {
    width: 1280px;
  }
}

.top-recruit__inner {
  background-color: rgba(255, 255, 255, 0.8);
}

@media (max-width: 767px) {
  .top-recruit__inner {
    padding: 0 20px 30px;
  }
}

@media (min-width: 768px) {
  .top-recruit__inner {
    margin: 0 auto;
    height: 17.81em;
    width: 56.59%;
  }
}

.top-recruit__heading {
  margin-top: -17.5px;
}

@media (min-width: 768px) {
  .top-recruit__heading {
    margin-top: -1.7em;
  }
}

.top-recruit__txt {
  font-size: 13px;
  text-align: justify;
}

@media (min-width: 768px) {
  .top-recruit__txt {
    font-size: 0.86em;
    margin-top: 0.15em;
    text-align: center;
    width: 56.05%;
  }
}

@media (min-width: 1680px) {
  .top-recruit__txt {
    width: 60%;
  }
}

.top-recruit__btn {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .top-recruit__btn {
    margin-top: 2.88em;
  }
}

.access-area {
  margin-top: 60px;
}

@media (max-width: 767px) {
  .access-area {
    padding: 0 4vw;
  }
  body:not(#top) .access-area {
    padding: 0 4vw 60px;
  }
}

@media (min-width: 768px) {
  .access-area {
    margin-top: 7.5em;
  }
  body:not(#top) .access-area {
    padding-bottom: 7.5em;
  }
}

.access-area__txt {
  font-size: 13px;
}

@media (max-width: 767px) {
  .access-area__txt {
    text-align: justify;
  }
}

@media (min-width: 768px) {
  .access-area__txt {
    font-size: 0.86em;
  }
}

.access-area__btn {
  margin-top: 35px;
}

@media (min-width: 768px) {
  .access-area__btn {
    margin-top: 2.13em;
  }
}

.access-area__map {
  position: relative;
  width: 100%;
  height: 84vw;
  margin-top: 35px;
}

@media (min-width: 768px) {
  .access-area__map {
    height: 32.19em;
    margin: 3.38em auto 0;
    width: 93.59%;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  .access-area__map {
    max-width: 1198px;
  }
}

@media (min-width: 1680px) {
  .access-area__map {
    width: 1280px;
  }
}

.access-area__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#top .company {
  background-color: #fafafa;
  padding: 60px 4vw;
}

@media (min-width: 768px) {
  #top .company {
    padding: 6.25em 0 9.38em;
  }
}

.company__container {
  background-color: #fafafa;
  padding: 60px 4vw;
}

@media (min-width: 768px) {
  .company__container {
    padding: 5.63em 0;
  }
}

.company__contents {
  display: flex;
}

@media (max-width: 767px) {
  .company__contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .company__contents {
    flex-wrap: wrap;
    margin: 0 auto;
    width: 90vw;
  }
}

@media (min-width: 901px) {
  .company__contents {
    width: 87.65vw;
  }
}

@media (min-width: 901px) and (max-width: 1679px) {
  .company__contents {
    max-width: 1122px;
  }
}

@media (min-width: 1680px) {
  .company__contents {
    width: 1310px;
  }
}

@media all and (-ms-high-contrast: none) {
  .company__contents {
    min-height: 0%;
  }
}

@media (min-width: 768px) {
  body:not(#top) .company__contents {
    width: 93.59%;
  }
}

@media (min-width: 768px) and (max-width: 1679px) {
  body:not(#top) .company__contents {
    max-width: 1198px;
  }
}

@media (min-width: 1680px) {
  body:not(#top) .company__contents {
    width: 1280px;
  }
}

.company__item {
  background-color: #fff;
  display: flex;
}

@media (max-width: 767px) {
  .company__item:not(:first-child) {
    margin-top: 20px;
  }
  body:not(#top) .company__item {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .company__item {
    width: calc(50% - 5px);
    margin-bottom: 25px;
  }
  .company__item:nth-child(even) {
    margin-left: auto;
  }
}

@media (min-width: 1680px) {
  .company__item {
    width: calc(50% - 6px);
  }
}

@media (min-width: 768px) {
  body:not(#top) .company__item {
    width: 49.22%;
  }
  body:not(#top) .company__item:nth-child(2) ~ .company__item {
    margin-top: 0.94em;
  }
}

.company__details {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 15px;
}

@media (max-width: 767px) {
  body:not(#top) .company__details {
    order: 1;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

@media (min-width: 768px) {
  .company__details {
    padding: 1.25em;
  }
}

@media (min-width: 901px) {
  .company__details {
    padding: 1.88em 1.25em;
  }
}

@media (min-width: 1280px) {
  .company__details {
    padding-left: 1.88em;
    padding-right: 1.88em;
  }
}

@media (min-width: 1680px) {
  .company__details {
    padding-left: 2.19em;
    padding-right: 2.19em;
  }
}

@media all and (-ms-high-contrast: none) {
  .company__details {
    width: 58.4%;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 901px) {
  .company__details {
    padding: 1.88em 1.25em;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 1280px) {
  .company__details {
    padding-left: 1.88em;
    padding-right: 1.88em;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 901px) {
  body:not(#top) .company__details {
    padding: 1.56em 1.88em;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 1280px) {
  body:not(#top) .company__details {
    padding-left: 2.19em;
    padding-right: 2.19em;
  }
}

@media all and (-ms-high-contrast: none) {
  .company__details > * {
    max-width: 100%;
  }
}

.company__ttl {
  font-weight: bold;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (max-width: 767px) {
  body:not(#top) .company__ttl {
    font-size: 16px;
  }
}

@media (min-width: 768px) {
  .company__ttl {
    font-size: 16px;
    letter-spacing: 0.05em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .company__ttl {
    line-height: 1.25;
  }
}

@media (min-width: 901px) {
  .company__ttl {
    font-size: 1.29em;
  }
}

.company__txt {
  font-size: 12px;
  line-height: 1.75;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (max-width: 767px) {
  body:not(#top) .company__txt {
    font-size: 13px;
  }
}

@media (min-width: 768px) {
  .company__txt {
    font-size: 0.86em;
    margin-top: 0.73em;
    text-align: justify;
  }
}

@media all and (-ms-high-contrast: none) {
  .company__txt {
    text-justify: inter-ideograph;
  }
}

@media (max-width: 767px) {
  .company__btn {
    height: 30px;
    margin-top: 10px;
    width: 110px;
  }
  .company__btn span {
    font-size: 11px;
  }
}

@media (min-width: 768px) {
  .company__btn {
    margin-top: 1.38em;
  }
}

.company__pic {
  flex: 0 0 auto;
  width: 41.6%;
}

@media (max-width: 767px) {
  body:not(#top) .company__pic {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .company__pic img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
}

#top .company__list {
  border-bottom: 1px solid #000;
  margin-top: 38px;
}

@media (min-width: 768px) {
  #top .company__list {
    margin: 4.25em auto 0;
    width: calc(100% - 1.5em);
  }
}

@media (min-width: 1680px) {
  #top .company__list {
    width: calc(100% - 28px);
  }
}

#top .company__link {
  border-top: 1px solid #000;
}

#top .company__link a {
  color: #000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 42px;
  width: 100%;
  padding: 0 12px;
  transition: color 0.4s ease;
}

@media (min-width: 768px) {
  #top .company__link a {
    height: 4.5em;
    padding: 0 3.13em;
  }
}

#top .company__link a::after {
  font-weight: bold;
  font-size: 16.65px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  content: "+";
  line-height: 1;
  height: 20px;
  width: 20px;
  background-color: #000;
  transition: background-color 0.4s ease;
}

@media (min-width: 768px) {
  #top .company__link a::after {
    font-size: 1.29em;
    height: 1.21em;
    width: 1.21em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  #top .company__link a:hover {
    color: #005bac;
  }
  #top .company__link a:hover::after {
    background-color: #005bac;
  }
}

.solution-service {
  padding: 60px 4vw 0;
}

@media (min-width: 768px) {
  .solution-service {
    padding: 6.25em 0;
  }
}

.solution-service__item {
  background-color: #fafafa;
  display: flex;
  flex-direction: column;
}

.solution-service__item:not(:first-of-type) {
  margin-top: 45px;
}

@media (min-width: 768px) {
  .solution-service__item {
    flex-direction: row-reverse;
    width: 90vw;
  }
  .solution-service__item:nth-of-type(even) {
    flex-direction: row;
  }
  .solution-service__item:not(:first-of-type) {
    margin-top: 4.38em;
  }
}

@media (min-width: 901px) {
  .solution-service__item {
    width: 87.65vw;
  }
}

@media (min-width: 901px) and (max-width: 1679px) {
  .solution-service__item {
    max-width: 1122px;
  }
}

@media (min-width: 1680px) {
  .solution-service__item {
    width: 1310px;
  }
}

@media all and (-ms-high-contrast: none) {
  .solution-service__item {
    min-height: 0%;
  }
}

@media (min-width: 768px) {
  .solution-service__pic {
    width: 50%;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .solution-service__pic img {
    object-fit: cover;
    height: 100%;
    width: 100%;
  }
}

.solution-service__details {
  display: flex;
  flex-direction: column;
  padding: 25px 4vw 45px;
}

@media (min-width: 768px) {
  .solution-service__details {
    padding: 1.88em;
    width: 50%;
  }
}

@media (min-width: 901px) {
  .solution-service__details {
    padding: 4.25em 3.75em;
  }
}

@media (min-width: 768px) {
  body:not(#top):not(#solution-service) .solution-service__details {
    padding-top: 0;
    padding-bottom: 0;
    justify-content: center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  body:not(#top):not(#solution-service) .solution-service__details {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
}

@media (min-width: 901px) {
  body:not(#top):not(#solution-service) .solution-service__details {
    padding-left: 4em;
    padding-right: 4em;
  }
}

.solution-service__details h3 {
  color: #005bac;
  font-size: 1.13em;
  margin-top: 1.33em;
}

.solution-service__num {
  color: #005bac;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.075em;
  font-family: "Montserrat", sans-serif;
}

@media (min-width: 768px) {
  .solution-service__num {
    font-size: 0.75em;
  }
}

.solution-service__ttl {
  font-size: 18px;
}

@media (min-width: 768px) {
  .solution-service__ttl {
    font-size: 1.61em;
    letter-spacing: 0.05em;
  }
}

body:not(#top):not(#solution-service) .solution-service__ttl {
  line-height: 1.5;
}

@media (min-width: 768px) and (max-width: 800px) {
  body:not(#top):not(#solution-service) .solution-service__ttl {
    font-size: 1.44em;
  }
}

.solution-service__txt {
  font-size: 13px;
  text-align: justify;
  margin-top: 13px;
}

@media (min-width: 768px) {
  .solution-service__txt {
    font-size: 0.86em;
    line-height: 1.75;
    margin-top: 1.24em;
  }
}

.solution-service__services {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 15px;
}

@media (min-width: 768px) {
  .solution-service__services {
    margin-top: 1.5em;
  }
}

.solution-service__btn {
  margin-top: 20px;
  align-self: center;
}

@media (min-width: 768px) {
  .solution-service__btn {
    align-self: flex-end;
    margin-top: auto;
  }
}

@media (min-width: 768px) {
  body:not(#top):not(#solution-service) .solution-service__btn {
    margin-top: 2.5em;
  }
}

.solution-service__logo--wiho {
  margin-right: calc(43px * 0.5);
  width: calc(151px * 0.8);
}

@media (min-width: 901px) {
  .solution-service__logo--wiho {
    margin-right: 2.69em;
    width: 9.44em;
  }
}

.solution-service__logo--sim {
  margin-right: calc(43px * 0.5);
  width: calc(90px * 0.8);
}

@media (min-width: 901px) {
  .solution-service__logo--sim {
    margin-right: 2.69em;
    width: 5.63em;
  }
}

.solution-service__logo--ez {
  margin-top: calc(30px * 0.5);
  width: calc(163px * 0.8);
}

@media (min-width: 901px) {
  .solution-service__logo--ez {
    margin-top: 1.88em;
    width: 10.19em;
  }
}

.solution-service__logo--par {
  margin-right: calc(32px * 0.5);
  width: calc(173px * 0.8);
}

@media (min-width: 901px) {
  .solution-service__logo--par {
    margin-right: 2em;
    width: 10.81em;
  }
}

.solution-service__logo--la {
  width: calc(140px * 0.8);
}

@media (max-width: 767px) {
  .solution-service__logo--la {
    margin-top: 15px;
  }
}

@media (min-width: 901px) {
  .solution-service__logo--la {
    width: 8.75em;
  }
}

.solution-service__logo--nh {
  margin-top: 15px;
  width: calc(152px * 0.8);
}

@media (max-width: 767px) {
  .solution-service__logo--nh {
    margin-left: 15px;
  }
}

@media (min-width: 901px) {
  .solution-service__logo--nh {
    margin-top: 1.88em;
    width: 9.5em;
  }
}

.solution-service__logo--biki {
  width: calc(88px * 0.8);
}

@media (min-width: 901px) {
  .solution-service__logo--biki {
    width: 5.5em;
  }
}

.page__head {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

@media (max-width: 767px) {
  .page__head {
    flex-direction: column;
    padding: 10px 4vw 10px;
  }
}

@media (min-width: 768px) {
  .page__head {
    height: 8.63em;
  }
}

@media (max-width: 767px) {
  #pinnar .page__head img,
  #lockar .page__head img,
  #nipponhodai .page__head img,
  #biki .page__head img {
    order: 1;
    margin-top: 1em;
  }
}

@media (min-width: 768px) {
  #pinnar .page__head,
  #lockar .page__head,
  #nipponhodai .page__head,
  #biki .page__head {
    padding-top: 2.88em;
    padding-bottom: 1.88em;
    height: 11.88em;
    justify-content: space-between;
  }
}

.page__heading {
  font-weight: 500;
  font-size: 20px;
}

@media (max-width: 767px) {
  .page__heading {
    line-height: 1.5;
    margin-top: 30px;
    order: 1;
    text-align: center;
  }
}

@media (min-width: 768px) {
  .page__heading {
    font-size: 1.71em;
  }
}

.topic__path {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .topic__path {
    align-self: flex-start;
  }
}

@media (min-width: 768px) {
  .topic__path {
    position: absolute;
    top: 0.63em;
    left: 3.13em;
  }
}

.topic__path a {
  color: #005bac;
  font-size: 0.63em;
}

@media (max-width: 767px) {
  .topic__path a {
    margin-right: 0.5em;
  }
}

@media (min-width: 768px) {
  .topic__path a {
    line-height: 1;
  }
  .topic__path a:not(:first-child) {
    margin-left: 0.5em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .topic__path a:hover {
    text-decoration: underline;
  }
}

.topic__path span {
  color: #666;
  font-size: 0.63em;
}

@media (max-width: 767px) {
  .topic__path span {
    margin-right: 0.5em;
  }
}

@media (min-width: 768px) {
  .topic__path span {
    line-height: 1;
    margin-left: 0.5em;
  }
}

.page__lead {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media (max-width: 767px) {
  .page__lead {
    position: relative;
    padding: 150px 4vw 30px;
  }
  .page__lead::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    top: 50%;
    content: "";
    background: linear-gradient(to top, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0));
  }
  .page__lead > * {
    position: relative;
  }
}

@media (min-width: 768px) {
  .page__lead {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 25.63em;
    padding-top: 7.19em;
  }
}

@media (min-width: 768px) {
  #nipponhodai .page__lead,
  #lockar .page__lead,
  #biki .page__lead {
    padding-top: 6.25em;
  }
}

@media (min-width: 768px) {
  #pinnar .page__lead {
    padding-top: 5em;
  }
}

.page__lead--mobile-communications {
  background-image: url("../img_hc/page/page_lead_mobile-communications.jpg");
}

.page__lead--solution-service {
  background-image: url("../img_hc/page/page_lead_solution-service.jpg");
}

.page__lead--digital {
  background-image: url("../img_hc/page/page_lead_digital.jpg");
}

.page__lead--rental {
  background-image: url("../img_hc/page/page_lead_rental.jpg");
}

.page__lead--alliance {
  background-image: url("../img_hc/page/page_lead_alliance.jpg");
}

.page__lead--philosophy {
  background-image: url("../img_hc/page/page_lead_philosophy.jpg");
}

.page__lead--pinnar {
  background-image: url("../img_hc/page/page_lead_pinnar.jpg");
}

.page__lead--nipponhodai {
  background-image: url("../img_hc/page/page_lead_nipponhodai.jpg");
}

.page__lead--lockar {
  background-image: url("../img_hc/page/page_lead_lockar.jpg");
}

.page__lead--biki {
  background-image: url("../img_hc/page/page_lead_biki.jpg");
}

.page__lead--history {
  background-image: url("../img_hc/page/page_lead_history.jpg");
}

.page__lead--strength {
  background-image: url("../img_hc/page/page_lead_strength.jpg");
}

.page__lead--recruit {
  background-image: url("../img_hc/page/page_lead_recruit.jpg");
}

.page__lead--search {
  background-image: url("../img_hc/page/page_lead_search.jpg");
}

.page__lead--aboutus {
  background-image: url("../img_hc/page/page_lead_aboutus.jpg");
}

.page__lead--staff01 {
  background-image: url("../img_hc/page/page_lead_staff01.jpg");
}

.page__lead-box {
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
}

@media (min-width: 768px) {
  .page__lead-box {
    align-self: flex-end;
    padding: 3.13em 4.38em;
    width: 56.47%;
  }
  #history .page__lead-box,
  #staff .page__lead-box {
    align-self: flex-start;
  }
  #staff .page__lead-box {
    width: 49.17%;
  }
  #strength .page__lead-box {
    width: 61.75%;
    padding-left: 2.75em;
    padding-right: 2.75em;
  }
}

.page__lead-txt {
  color: #fff;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
  margin-top: 1.67em;
  text-align: justify;
}

@media (min-width: 768px) {
  .page__lead-txt {
    font-size: 0.86em;
    line-height: 1.75;
    margin-top: 1.67em;
    width: 57.62em;
  }
}

@media all and (-ms-high-contrast: none) {
  .page__lead-txt {
    text-justify: inter-ideograph;
  }
}

@media (min-width: 768px) {
  .page__lead-txt--auto {
    width: auto;
  }
}

.page__lead-txt a {
  color: #fff;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .page__lead-txt a:hover {
    text-decoration: underline;
  }
}

.sec__heading--1 {
  font-size: 18px;
  line-height: 1.5;
  text-align: justify;
}

.page__lead .sec__heading--1 {
  color: #fff;
}

@media (min-width: 768px) {
  .sec__heading--1 {
    font-size: 1.93em;
    line-height: 1.44;
    text-align: center;
  }
}

.local-nav {
  position: relative;
  background-color: #fff;
}

@media (min-width: 768px) {
  .local-nav {
    margin: -3.25em auto 0;
    padding: 0.88em 0 0.31em;
    width: 50.94em;
  }
}

@media (min-width: 768px) {
  .local-nav--gray {
    background-color: #fafafa;
  }
}

@media (min-width: 768px) {
  .local-nav--mt0 {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .local-nav__list {
    display: flex;
    height: 2.14em;
  }
}

@media (min-width: 768px) {
  .local-nav__list--4col .local-nav__item {
    width: 25%;
  }
  .local-nav__list--3col .local-nav__item {
    width: 33.33%;
  }
  .local-nav__list--2col .local-nav__item {
    width: 50%;
  }
  .local-nav__list--1col .local-nav__item {
    width: 100%;
  }
  .local-nav__item:not(:first-child) {
    border-left: 1px solid #bfbfbf;
  }
}

.local-nav__item a {
  color: #000;
  font-size: 13px;
}

@media (max-width: 767px) {
  .local-nav__item a {
    position: relative;
    border-bottom-style: solid;
    border-bottom-color: #ccc;
    border-bottom-width: 0;
    display: block;
    line-height: 0;
    overflow: hidden;
    padding: 0 4vw;
    opacity: 0;
    transition: 0.3s ease;
  }
  .local-nav__item a::after {
    position: absolute;
    top: calc(50% - 4px);
    right: calc(4vw + 4px);
    content: "";
    height: 8px;
    width: 8px;
    border-right: 1px solid #000;
    border-top: 1px solid #000;
    transform: translateY(-2px) rotate(135deg);
  }
}

@media (min-width: 768px) {
  .local-nav__item a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 0.75em;
  }
}

.local-nav__item a span {
  position: relative;
  display: block;
}

.local-nav__item a span::after {
  position: absolute;
  background-color: #005bac;
  height: 2px;
  content: "";
  left: 0;
  right: 0;
  bottom: -0.83em;
  transform: scaleX(0);
  transition: transform 0.3s ease;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .local-nav__item a:hover span::after {
    transform: scaleX(1);
  }
}

@media (max-width: 767px) {
  .local-nav__list.open a {
    border-bottom-width: 1px;
    padding: 15px 4vw;
    line-height: 1.75;
    opacity: 1;
  }
}

.local-nav__btn {
  background-color: #fafafa;
  font-size: 13px;
  font-weight: 500;
  padding: 15px 4vw;
  text-align: center;
  position: relative;
}

.local-nav__btn--border {
  border-bottom: 1px solid #ccc;
}

.local-nav__btn--border.open {
  border-width: 0;
}

.local-nav__btn::before,
.local-nav__btn::after {
  position: absolute;
  top: 50%;
  right: calc(4vw + 2px);
  background-color: #000;
  height: 1px;
  width: 15px;
  content: "";
  transition: transform 0.3s ease;
}

.local-nav__btn::after {
  transform: rotate(90deg);
}

.local-nav__btn.open::after {
  transform: rotate(0);
}

.local-nav--txt a {
  display: block;
  color: #000;
  font-size: 13px;
}

@media (max-width: 767px) {
  .local-nav--txt a {
    position: relative;
    border-bottom-style: solid;
    border-bottom-color: #ccc;
    border-bottom-width: 0;
    display: block;
    line-height: 0;
    overflow: hidden;
    padding: 0 4vw;
    opacity: 0;
    transition: 0.3s ease;
  }
  .local-nav--txt a::after {
    position: absolute;
    top: calc(50% - 4px);
    right: calc(4vw + 4px);
    content: "";
    height: 8px;
    width: 8px;
    border-right: 1px solid #000;
    border-top: 1px solid #000;
    transform: translateY(-2px) rotate(135deg);
  }
}

@media (min-width: 768px) {
  .local-nav--txt a {
    line-height: 1;
    font-size: 0.75em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .local-nav--txt a:hover {
    text-decoration: underline;
  }
}

@media (min-width: 768px) {
  .local-nav--txt.local-nav--2col {
    position: relative;
    background-color: #bfbfbf;
    height: 2.14em;
    margin: 0 auto;
    width: 1px;
  }
  .local-nav--txt.local-nav--2col a {
    position: absolute;
  }
}

@media (min-width: 768px) and (min-width: 768px) {
  .local-nav--txt.local-nav--2col a {
    white-space: nowrap;
    padding-top: 0.82em;
  }
  .local-nav--txt.local-nav--2col a:first-child {
    right: calc(100% + 2.91em);
  }
  .local-nav--txt.local-nav--2col a:last-child {
    left: calc(100% + 2.91em);
  }
}

@media (max-width: 767px) {
  .local-nav--txt__contents.open a {
    border-bottom-width: 1px;
    padding: 15px 4vw;
    line-height: 1.75;
    opacity: 1;
  }
}

@media (max-width: 767px) {
  .local-nav--foot {
    background-color: #fafafa;
  }
}

@media (min-width: 768px) {
  .local-nav--foot {
    background-color: #fafafa;
    display: flex;
    justify-content: center;
    padding: 25px 0 35px;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .local-nav--foot {
    flex-direction: column;
  }
}

@media (min-width: 901px) {
  .local-nav--foot {
    padding: 3.13em 0;
  }
}

.local-nav--foot p {
  font-weight: bold;
}

@media (max-width: 767px) {
  .local-nav--foot p {
    background-color: #005bac;
  }
  .local-nav--foot p a {
    color: #fff;
    padding: 15px 4vw;
  }
  .local-nav--foot p a::after {
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
  }
}

@media (min-width: 768px) {
  .local-nav--foot p {
    display: flex;
    align-items: center;
    height: 2.13em;
    width: 11.5em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .local-nav--foot p {
    margin-bottom: 1em;
    text-align: center;
    align-self: center;
  }
}

.local-nav--foot ul {
  display: flex;
}

@media (max-width: 767px) {
  .local-nav--foot ul {
    flex-direction: column;
  }
}

@media (max-width: 767px) {
  .local-nav--foot li:not(:first-child) {
    border-top: 1px solid #ccc;
  }
}

@media (min-width: 768px) {
  .local-nav--foot li {
    border-left: 1px solid #bfbfbf;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2.13em;
    width: 11.5em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .local-nav--foot li:first-child {
    border: none;
  }
}

.local-nav--foot a {
  color: #000;
  font-size: 12px;
}

@media (max-width: 767px) {
  .local-nav--foot a {
    position: relative;
    display: block;
    padding: 15px 4vw 15px calc(4vw + 1em);
  }
  .local-nav--foot a::after {
    position: absolute;
    top: calc(50% - 5px);
    right: calc(4vw + 5px);
    content: "";
    height: 10px;
    width: 10px;
    border-right: 1px solid #000;
    border-top: 1px solid #000;
    transform: rotate(45deg);
  }
}

@media (min-width: 768px) {
  .local-nav--foot a {
    font-size: 0.75em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .local-nav--foot a:hover {
    text-decoration: underline;
  }
}

@media (min-width: 768px) {
  .local-nav--foot-ss p,
  .local-nav--foot-com p,
  .local-nav--foot-rec p,
  .local-nav--foot-journal p {
    width: auto;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .local-nav--foot-ss ul,
  .local-nav--foot-com ul,
  .local-nav--foot-rec ul,
  .local-nav--foot-journal ul {
    justify-content: center;
  }
}

@media (min-width: 768px) {
  .local-nav--foot-ss li,
  .local-nav--foot-com li,
  .local-nav--foot-rec li,
  .local-nav--foot-journal li {
    width: auto;
  }
}

@media (min-width: 768px) {
  .local-nav--foot-ss a,
  .local-nav--foot-com a,
  .local-nav--foot-rec a,
  .local-nav--foot-journal a {
    padding-left: 1.75em;
    padding-right: 1.75em;
  }
}

@media (min-width: 901px) {
  .local-nav--foot-ss a,
  .local-nav--foot-com a,
  .local-nav--foot-rec a,
  .local-nav--foot-journal a {
    padding-left: 2.67em;
    padding-right: 2.67em;
  }
}

.local-nav--foot-journal {
  margin-top: 60px;
}

@media (min-width: 768px) {
  .local-nav--foot-journal {
    margin-top: 6.25em;
  }
}

@media (min-width: 768px) {
  .local-nav--foot-rec a {
    padding-left: 1.1em;
    padding-right: 1.1em;
  }
}

@media (min-width: 901px) {
  .local-nav--foot-rec a {
    padding-left: 2em;
    padding-right: 2em;
  }
}

@media (min-width: 1280px) {
  .local-nav--foot-rec a {
    padding-left: 2.67em;
    padding-right: 2.67em;
  }
}

.local-nav--foot-rec a[target] {
  line-height: 1.25;
}

.local-nav--foot-rec a[target] svg {
  width: 1.5em;
  height: 0.6em;
  vertical-align: baseline;
}

.col__contents {
  display: flex;
}

@media (max-width: 767px) {
  .col__contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .col__contents {
    justify-content: space-between;
    width: 90vw;
  }
}

@media (min-width: 901px) {
  .col__contents {
    width: 68.63em;
  }
}

.col__contents--5items {
  flex-wrap: wrap;
  justify-content: center;
}

@media (min-width: 768px) {
  .col__contents--5items .col__item:nth-child(2),
  .col__contents--5items .col__item:nth-child(3),
  .col__contents--5items .col__item:nth-child(5) {
    margin-left: 5%;
  }
}

@media (min-width: 901px) {
  .col__contents--5items .col__item:nth-child(2),
  .col__contents--5items .col__item:nth-child(3),
  .col__contents--5items .col__item:nth-child(5) {
    margin-left: 6.19em;
  }
}

@media (min-width: 901px) {
  .col__contents--5items .col__item:nth-child(4),
  .col__contents--5items .col__item:nth-child(5) {
    margin-top: 2.5em;
  }
}

.col__contents--7items {
  flex-wrap: wrap;
  justify-content: center;
}

.col__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 80vw;
}

@media (max-width: 767px) {
  .col__item:not(:first-child) {
    margin-top: 60px;
  }
}

@media (min-width: 768px) {
  .col__item {
    width: 30%;
  }
}

@media (min-width: 901px) {
  .col__item {
    width: 18.75em;
  }
}

.col__item h2 {
  align-self: flex-start;
  line-height: 1.44;
  letter-spacing: 0.07em;
  margin-top: 0.85em;
  font-size: 18px;
}

@media (min-width: 768px) {
  .col__item h2 {
    font-size: 1.34em;
  }
}

@media all and (-ms-high-contrast: none) {
  .col__item h2 {
    max-width: 100%;
  }
}

.col__item p {
  margin-top: 1em;
  font-size: 13px;
  text-align: justify;
}

@media (min-width: 768px) {
  .col__item p {
    font-size: 0.86em;
    line-height: 1.75;
  }
}

@media all and (-ms-high-contrast: none) {
  .col__item p {
    text-justify: inter-ideograph;
    max-width: 100%;
  }
}

.col__item .c-btn,
.col__item .footer__pagetop {
  width: 16.13em;
  margin-top: 25px;
}

@media (min-width: 768px) {
  .col__item .c-btn,
  .col__item .footer__pagetop {
    margin-top: auto;
  }
}

.col__item .c-btn::before,
.col__item .footer__pagetop::before {
  top: calc(50% - 8.06em);
  left: calc(50% - 8.06em);
  height: 16.13em;
  width: 16.13em;
}

.c-icon-contents {
  display: flex;
  margin-top: 20px;
}

@media (max-width: 767px) {
  .c-icon-contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .c-icon-contents {
    margin-top: 1.25em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .c-icon-contents {
    justify-content: space-between;
    width: 92vw;
  }
}

.col__item--3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 80vw;
}

@media (max-width: 767px) {
  .col__item--3:not(:first-child) {
    margin-top: 40px;
  }
}

@media (min-width: 768px) {
  .col__item--3 {
    width: 30%;
  }
}

@media (min-width: 901px) {
  .col__item--3 {
    width: 16.56em;
  }
  .col__item--3:not(:first-child) {
    margin-left: 5.5em;
  }
}

.col__item--3 .col__icon {
  position: relative;
  background-color: #fff;
  border-radius: 50%;
  width: 40vw;
}

@media (max-width: 767px) {
  .col__item--3 .col__icon {
    height: 40vw;
  }
}

@media (min-width: 768px) {
  .col__item--3 .col__icon {
    padding-top: 73.58%;
    width: 73.58%;
  }
}

.col__item--3 .col__icon img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.col__item--3 .col__ttl {
  color: #005bac;
  font-weight: 500;
  text-align: center;
  margin-top: 1em;
  font-size: 15px;
  max-width: 100%;
}

@media (min-width: 768px) {
  .col__item--3 .col__ttl {
    font-size: 1.06em;
    line-height: 1.41;
    letter-spacing: 0.01em;
    margin-top: 0.88em;
  }
}

.col__item--3 .col__ttl + .col__txt {
  margin-top: 1em;
}

.col__item--3 .col__txt {
  max-width: 100%;
}

.c-box__contents {
  position: relative;
}

@media (max-width: 767px) {
  .c-box__contents {
    width: 100%;
  }
}

.c-box-link__contents {
  display: flex;
  position: relative;
}

@media (max-width: 767px) {
  .c-box-link__contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .c-box-link__contents {
    justify-content: space-between;
  }
}

.c-box-link {
  position: relative;
  background-color: #000;
  overflow: hidden;
}

@media (max-width: 767px) {
  .c-box-link + .c-box-link {
    margin-top: 30px;
  }
}

@media (min-width: 768px) {
  .c-box-link {
    width: 48%;
  }
}

@media (min-width: 901px) {
  .c-box-link {
    width: 49.22%;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .c-box-link img {
    transition: opacity 0.4s ease, transform 0.4s ease;
  }
}

.c-box-link:hover .c-box__details {
  background-color: white;
}

.c-box-link:hover img {
  opacity: 0.8;
  transform: scale(1.05);
}

.c-box__pic {
  display: block;
}

@media (max-width: 767px) {
  .c-box__pic {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    height: 100% !important;
    width: 102%;
  }
}

.c-box__inner {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (max-width: 767px) {
  .c-box__inner {
    position: relative;
    padding: 30px 4vw;
  }
}

@media (min-width: 768px) {
  .c-box__inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

.c-box__details {
  background-color: rgba(255, 255, 255, 0.8);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px 20px;
}

@media (max-width: 900px) {
  .c-box-link .c-box__details {
    padding: 30px 0;
    min-width: 265px;
  }
}

@media (min-width: 901px) {
  .c-box__details {
    padding: 2.5em;
    width: 61.75%;
  }
  .c-box-link .c-box__details {
    padding: 2.5em 0;
    width: 52.97%;
  }
}

@media (min-width: 901px) and (hover: hover),
  (min-width: 901px) and (-ms-high-contrast: none) {
  .c-box-link .c-box__details {
    transition: background-color 0.4s ease;
  }
}

@media (min-width: 768px) {
  .c-box__details h1 {
    font-size: 1.18em;
    line-height: 1;
  }
}

.c-box__details p {
  margin-top: 1em;
}

.c-box__details > span {
  font-weight: bold;
}

.c-box__details .c-btn,
.c-box__details .footer__pagetop {
  height: 2.88em;
  width: 13.88em;
  margin-top: 20px;
  border-radius: 1.44em;
}

.c-box__details .c-btn::before,
.c-box__details .footer__pagetop::before {
  top: calc(50% - 6.94em);
  left: calc(50% - 6.94em);
  height: 13.88em;
  width: 13.88em;
}

.c-box__details .c-btn::after,
.c-box__details .footer__pagetop::after {
  border-radius: 1.44em;
}

.c-square__wrap {
  background-color: #fafafa;
  display: flex;
  flex-direction: column;
}

.c-square__wrap:not(:first-of-type) {
  margin-top: 39px;
}

@media (min-width: 768px) {
  .c-square__wrap {
    flex-direction: row-reverse;
    width: 90vw;
  }
  .c-square__wrap:nth-of-type(even) {
    flex-direction: row;
  }
  .c-square__wrap:not(:first-of-type) {
    margin-top: 4.38em;
  }
}

@media (min-width: 901px) {
  .c-square__wrap {
    width: 87.65vw;
  }
}

@media (min-width: 901px) and (max-width: 1679px) {
  .c-square__wrap {
    max-width: 1122px;
  }
}

@media (min-width: 1680px) {
  .c-square__wrap {
    width: 1310px;
  }
}

@media all and (-ms-high-contrast: none) {
  .c-square__wrap {
    min-height: 0%;
  }
}

@media (min-width: 768px) {
  .c-square__pic {
    width: 50%;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .c-square__pic img {
    object-fit: cover;
    height: 100%;
    width: 100%;
  }
}

.c-square__details {
  display: flex;
  flex-direction: column;
  padding: 25px 4vw 45px;
}

@media (min-width: 768px) {
  .c-square__details {
    padding-top: 0;
    padding-bottom: 0;
    justify-content: center;
    padding: 1.88em;
    width: 50%;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .c-square__details {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
}

@media (min-width: 901px) {
  .c-square__details {
    padding-left: 4em;
    padding-right: 4em;
  }
}

.c-square__details h3 {
  color: #005bac;
  font-size: 1.13em;
  margin-top: 1.33em;
}

.c-square__ttl {
  font-size: 18px;
  line-height: 1.5;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (min-width: 768px) {
  .c-square__ttl {
    font-size: 1.61em;
    letter-spacing: 0.05em;
  }
}

@media (min-width: 768px) and (max-width: 800px) {
  .c-square__ttl {
    font-size: 1.44em;
  }
}

.c-square__txt {
  font-size: 13px;
  text-align: justify;
  margin-top: 13px;
}

@media (min-width: 768px) {
  .c-square__txt {
    font-size: 0.86em;
    line-height: 1.75;
    margin-top: 1.24em;
  }
}

@media (min-width: 768px) {
  #pinnar .topics,
  #nipponhodai .topics,
  #lockar .topics,
  #biki .topics,
  #journal .topics,
  #interview .topics,
  #careers .topics,
  #graduates .topics,
  #movie .topics,
  #recruit .topics,
  #staff .topics {
    padding-top: 6.25em;
  }
}

@media (min-width: 768px) {
  #pinnar .topics__contents,
  #nipponhodai .topics__contents,
  #lockar .topics__contents,
  #biki .topics__contents,
  #journal .topics__contents,
  #interview .topics__contents,
  #careers .topics__contents,
  #graduates .topics__contents,
  #movie .topics__contents,
  #recruit .topics__contents,
  #staff .topics__contents {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 90%;
  }
  #pinnar .topics__contents::after,
  #nipponhodai .topics__contents::after,
  #lockar .topics__contents::after,
  #biki .topics__contents::after,
  #journal .topics__contents::after,
  #interview .topics__contents::after,
  #careers .topics__contents::after,
  #graduates .topics__contents::after,
  #movie .topics__contents::after,
  #recruit .topics__contents::after,
  #staff .topics__contents::after {
    content: "";
    width: calc(33.33% - 1.25em);
  }
}

@media (min-width: 901px) {
  #pinnar .topics__contents,
  #nipponhodai .topics__contents,
  #lockar .topics__contents,
  #biki .topics__contents,
  #journal .topics__contents,
  #interview .topics__contents,
  #careers .topics__contents,
  #graduates .topics__contents,
  #movie .topics__contents,
  #recruit .topics__contents,
  #staff .topics__contents {
    width: 57.88em;
  }
}

@media (max-width: 767px) {
  #pinnar .topics__contents .c-cols__item,
  #nipponhodai .topics__contents .c-cols__item,
  #lockar .topics__contents .c-cols__item,
  #biki .topics__contents .c-cols__item,
  #journal .topics__contents .c-cols__item,
  #interview .topics__contents .c-cols__item,
  #careers .topics__contents .c-cols__item,
  #graduates .topics__contents .c-cols__item,
  #movie .topics__contents .c-cols__item,
  #recruit .topics__contents .c-cols__item,
  #staff .topics__contents .c-cols__item {
    max-width: 330px;
  }
  #pinnar .topics__contents .c-cols__item:not(:first-child),
  #nipponhodai .topics__contents .c-cols__item:not(:first-child),
  #lockar .topics__contents .c-cols__item:not(:first-child),
  #biki .topics__contents .c-cols__item:not(:first-child),
  #journal .topics__contents .c-cols__item:not(:first-child),
  #interview .topics__contents .c-cols__item:not(:first-child),
  #careers .topics__contents .c-cols__item:not(:first-child),
  #graduates .topics__contents .c-cols__item:not(:first-child),
  #movie .topics__contents .c-cols__item:not(:first-child),
  #recruit .topics__contents .c-cols__item:not(:first-child),
  #staff .topics__contents .c-cols__item:not(:first-child) {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  #pinnar .topics__contents .c-cols__item,
  #nipponhodai .topics__contents .c-cols__item,
  #lockar .topics__contents .c-cols__item,
  #biki .topics__contents .c-cols__item,
  #journal .topics__contents .c-cols__item,
  #interview .topics__contents .c-cols__item,
  #careers .topics__contents .c-cols__item,
  #graduates .topics__contents .c-cols__item,
  #movie .topics__contents .c-cols__item,
  #recruit .topics__contents .c-cols__item,
  #staff .topics__contents .c-cols__item {
    width: calc(33.33% - 1.25em);
  }
}

#pinnar .topics__btn,
#nipponhodai .topics__btn,
#lockar .topics__btn,
#biki .topics__btn,
#journal .topics__btn,
#interview .topics__btn,
#careers .topics__btn,
#graduates .topics__btn,
#movie .topics__btn,
#recruit .topics__btn,
#staff .topics__btn {
  margin-top: 40px;
}

@media (min-width: 768px) {
  #pinnar .topics__btn,
  #nipponhodai .topics__btn,
  #lockar .topics__btn,
  #biki .topics__btn,
  #journal .topics__btn,
  #interview .topics__btn,
  #careers .topics__btn,
  #graduates .topics__btn,
  #movie .topics__btn,
  #recruit .topics__btn,
  #staff .topics__btn {
    margin-top: 3.75em;
  }
}

@media (min-width: 768px) {
  #journal .topics__contents {
    flex-wrap: wrap;
    margin-top: -3em;
  }
}

@media (min-width: 768px) {
  #journal .topics__contents .c-cols__item {
    margin-top: 3em;
  }
}

.sitemap {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  .sitemap {
    padding: 6.25em 0;
  }
}

.sitemap .footer-nav {
  margin-top: 0;
}

@media (min-width: 768px) {
  .sitemap .footer-nav {
    justify-content: space-between;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .sitemap .footer-nav {
    flex-wrap: wrap;
  }
  .sitemap .footer-nav li a {
    font-size: 10px;
  }
  .sitemap .footer-nav .footer-nav__col:last-child {
    width: 100%;
    margin-top: 40px;
    margin-left: 0 !important;
  }
  .sitemap .footer-nav .footer-nav__col:last-child .footer-nav__list {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
  }
}

@media (min-width: 901px) and (max-width: 1279px) {
  .sitemap .footer-nav {
    width: 90%;
    max-width: 1175px;
  }
}

@media (min-width: 768px) {
  .sitemap .footer-nav__col:not(:first-child) {
    margin-left: 0 !important;
  }
}

@media (min-width: 768px) {
  .sitemap .sns__list {
    margin-top: 4em;
  }
}

.message {
  background-color: #fafafa;
  padding: 60px 0;
}

@media (min-width: 768px) {
  .message {
    padding: 6.25em 0;
  }
}

.message__container {
  display: flex;
}

@media (max-width: 767px) {
  .message__container {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .message__container {
    flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  .message__head {
    align-self: center;
    width: 45.54%;
    margin-left: 3.19%;
    padding-right: 1%;
  }
}

@media (min-width: 768px) and (max-width: 1279px) {
  .message__head {
    padding-right: 3%;
  }
}

@media all and (-ms-high-contrast: none) {
  .message__head {
    width: 44.63%;
  }
}

.message__head h1 {
  font-size: 18px;
  letter-spacing: 0.075em;
}

@media (max-width: 767px) {
  .message__head h1 {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .message__head h1 {
    font-size: 22px;
    line-height: 1.44;
  }
}

@media (min-width: 901px) {
  .message__head h1 {
    font-size: 1.93em;
  }
}

@media (min-width: 1680px) {
  .message__head h1 {
    font-size: 36px;
  }
}

@media all and (-ms-high-contrast: none) {
  .message__head h1 {
    letter-spacing: 0;
  }
}

.message__head p {
  margin-top: 1em;
}

@media (max-width: 767px) {
  .message__head p {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .message__head p {
    font-size: 1.07em;
    margin-top: 2.33em;
  }
}

@media (max-width: 767px) {
  .message__pic {
    margin-top: 30px;
  }
}

@media (min-width: 768px) {
  .message__pic {
    width: 47.54%;
    margin-left: auto;
    margin-right: 3.19%;
  }
}

@media (min-width: 1680px) {
  .message__pic {
    width: 610px;
  }
}

@media all and (-ms-high-contrast: none) {
  .message__pic {
    width: 46.45%;
  }
}

.message__body {
  display: flex;
  flex-direction: column;
  margin-top: 30px;
}

@media (min-width: 768px) {
  .message__body {
    margin-top: 4em;
    padding-left: 3.19%;
    padding-right: 3.19%;
  }
}

.message__body p {
  font-size: 13px;
  text-align: justify;
}

@media (min-width: 768px) {
  .message__body p {
    font-size: 0.86em;
    line-height: 1.75;
  }
}

@media all and (-ms-high-contrast: none) {
  .message__body p {
    text-justify: inter-ideograph;
  }
}

.message__body p + p {
  margin-top: 1.75em;
}

@media (min-width: 768px) {
  .message__body p + p {
    margin-top: 1.75em;
  }
}

@media all and (-ms-high-contrast: none) {
  .message__body {
    max-width: 100%;
    min-width: 100%;
  }
  .message__body > * {
    min-height: 0%;
  }
}

.message__sig {
  align-self: flex-end;
  margin-top: 30px;
  width: 100px;
  height: auto;
}

@media (min-width: 768px) {
  .message__sig {
    margin-top: 3em;
    width: 9.06em !important;
  }
}

@media (min-width: 768px) {
  .president-blog {
    padding-bottom: 6.25em;
  }
}

.president-blog__contents {
  display: flex;
}

@media (max-width: 767px) {
  .president-blog__contents {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .president-blog__contents {
    display: flex;
    justify-content: space-between;
    margin-top: 5.75em;
  }
}

@media (max-width: 767px) {
  .president-blog__contents .c-cols__item {
    max-width: 330px;
  }
  .president-blog__contents .c-cols__item:not(:first-child) {
    margin-top: 20px;
  }
}

.president-blog__btn {
  margin-top: 50px;
}

@media (min-width: 768px) {
  .president-blog__btn {
    margin-top: 3.13em;
  }
}

#philosophy .vision__heading,
#philosophy .value__heading,
.strategy__heading {
  font-weight: 500;
  font-size: 17px;
}

@media (min-width: 768px) {
  #philosophy .vision__heading,
  #philosophy .value__heading,
  .strategy__heading {
    font-size: 1.71em;
    line-height: 1.62;
    text-align: center;
  }
}

#philosophy .page__lead,
#strength .page__lead,
#history .page__lead {
  height: auto;
}

@media (min-width: 768px) {
  #philosophy .page__lead,
  #strength .page__lead,
  #history .page__lead {
    padding: 50px 0;
    justify-content: center;
  }
}

@media (min-width: 901px) {
  #philosophy .page__lead,
  #strength .page__lead,
  #history .page__lead {
    padding: 0;
    height: 30em;
  }
}

@media (min-width: 1280px) {
  #philosophy .page__lead,
  #strength .page__lead,
  #history .page__lead {
    padding: 0 calc(50% - 549px);
  }
}

@media (min-width: 1680px) {
  #philosophy .page__lead,
  #strength .page__lead,
  #history .page__lead {
    padding: 0 calc(50% - 640px);
  }
}

#philosophy .sec__heading--1,
#strength .sec__heading--1,
#history .sec__heading--1 {
  text-align: left;
}

#philosophy .page__lead-txt,
#strength .page__lead-txt,
#history .page__lead-txt {
  width: 100%;
}

@media (min-width: 768px) {
  #philosophy .c-sec,
  #strength .c-sec,
  #history .c-sec {
    padding-top: 6.25em;
    padding-bottom: 6.25em;
  }
}

@media (min-width: 768px) {
  #philosophy .philosophy__list {
    margin-top: 1.38em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #philosophy .philosophy__list {
    padding-left: 4vw;
    padding-right: 4vw;
  }
}

#philosophy .philosophy__list li {
  font-size: 17px;
  font-weight: 500;
}

#philosophy .philosophy__list li::first-letter {
  color: #005bac;
}

@media (max-width: 767px) {
  #philosophy .philosophy__list li {
    text-indent: -1.16em;
    padding-left: 1.16em;
  }
}

@media (min-width: 768px) {
  #philosophy .philosophy__list li {
    font-size: 1.71em;
    line-height: 1.46;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #philosophy .philosophy__list li {
    text-indent: -1em;
    padding-left: 1em;
  }
}

#philosophy .philosophy__list li + li {
  margin-top: 0.5em;
}

@media (min-width: 768px) {
  #philosophy .philosophy__list li + li {
    margin-top: 1.46em;
  }
}

#philosophy .vision {
  background-color: #fafafa;
}

#philosophy .value__list {
  display: flex;
  margin-top: 25px;
}

@media (min-width: 768px) {
  #philosophy .value__list {
    margin-top: 2.38em;
  }
}

@media (min-width: 901px) {
  #philosophy .value__list {
    justify-content: center;
  }
}

#philosophy .value__item > div {
  background-color: #005bac;
  border-radius: 2.44em;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  width: 4.88em;
  height: 4.88em;
}

#philosophy .value__item > div span {
  font-size: 2.14em;
  font-weight: bold;
  line-height: 1;
}

#philosophy .value__item p {
  text-align: center;
  font-size: 16px;
  font-weight: 500;
}

@media (min-width: 768px) {
  #philosophy .value__item p {
    font-size: 16px;
    line-height: 1.58;
  }
}

@media (min-width: 901px) {
  #philosophy .value__item p {
    font-size: 1.29em;
  }
}

#philosophy .value__item p span {
  font-size: 0.83em;
}

@media (min-width: 768px) and (max-width: 900px) {
  #philosophy .value__item p span {
    font-size: 0.75em;
  }
}

#philosophy .local-nav--foot {
  margin-top: 0;
}

#strategy .movie__wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

#strategy .movie__wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

#strategy .local-nav--foot {
  margin-top: 0;
}

.strategy {
  padding: 40px 0 60px;
}

@media (min-width: 768px) {
  .strategy {
    padding: 5.63em 0;
  }
}

.strategy p {
  font-size: 13px;
  margin-top: 1.75em;
}

@media (min-width: 768px) {
  .strategy p {
    font-size: 0.86em;
    line-height: 1.75;
    margin-top: 1.75em;
  }
}

@media (max-width: 767px) {
  #history .page__lead {
    background-position: right -300px center;
  }
}

#history .prize__contents h2 {
  font-size: 17px;
  font-weight: 500;
  border-bottom: 1px solid #bfbfbf;
  padding-bottom: 0.39em;
}

@media (min-width: 768px) {
  #history .prize__contents h2 {
    font-size: 1.29em;
  }
}

#history .prize__sec:not(:first-child) {
  margin-top: 30px;
}

@media (min-width: 768px) {
  #history .prize__sec:not(:first-child) {
    margin-top: 2.5em;
  }
}

#history .prize__list {
  margin-top: 0.75em;
}

@media (min-width: 768px) {
  #history .prize__list {
    display: flex;
    flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  #history .prize__list dt {
    width: 6.71em;
  }
}

@media (max-width: 767px) {
  #history .prize__list dd {
    padding-left: 1em;
  }
}

@media (min-width: 768px) {
  #history .prize__list dd {
    width: calc(100% - 6.71em);
  }
}

.history {
  background-color: #fafafa;
}

.history__wrap {
  width: 92vw;
  max-width: 1100px;
}

@media (max-width: 767px) {
  #solution-service .page__lead {
    background-position: left -60vw center;
  }
}

#solution-service .features {
  background-color: #fafafa;
  padding: 60px 4vw;
}

@media (min-width: 768px) {
  #solution-service .features {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5em 0 6em;
  }
}

@media (max-width: 767px) {
  #solution-service .features .sec__heading--1 {
    text-align: center;
  }
}

#solution-service .features__contents {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}

@media (max-width: 767px) {
  #solution-service .features__contents {
    flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  #solution-service .features__contents {
    margin-top: 2.88em;
  }
}

#solution-service .features__item {
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  height: 150px;
  width: 150px;
  padding-bottom: 30px;
}

@media (min-width: 768px) {
  #solution-service .features__item {
    height: 12.19em;
    width: 12.19em;
    padding-bottom: 2.5em;
  }
}

#solution-service .features__item img {
  height: auto;
}

#solution-service .features__item span {
  color: #005bac;
  font-size: 1.29em;
  font-weight: 500;
  line-height: 1;
  margin-top: 0.83em;
}

@media (max-width: 767px) {
  #solution-service .features__item:not(:first-child) {
    margin: 2px 11px 0;
  }
}

@media (min-width: 768px) {
  #solution-service .features__item:not(:first-child) {
    margin-left: 3.75em;
  }
}

@media (max-width: 767px) {
  #solution-service .features__item:nth-child(1) {
    margin: 0 calc(50% - 70px);
  }
}

#solution-service .features__item:nth-child(1) img {
  width: 73.5px;
}

@media (min-width: 768px) {
  #solution-service .features__item:nth-child(1) img {
    width: 4.94em;
  }
}

#solution-service .features__item:nth-child(2) img {
  width: 61.5px;
}

@media (min-width: 768px) {
  #solution-service .features__item:nth-child(2) img {
    width: 4.94em;
  }
}

#solution-service .features__item:nth-child(3) img {
  width: 63px;
}

@media (min-width: 768px) {
  #solution-service .features__item:nth-child(3) img {
    width: 5.06em;
  }
}

#solution-service .features__sec {
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 768px) {
  #solution-service .features__sec {
    margin-top: 1.63em;
  }
}

#solution-service .features__sec h2 {
  color: #005bac;
  font-size: 17px;
  font-weight: 500;
}

@media (min-width: 768px) {
  #solution-service .features__sec h2 {
    font-size: 1.29em;
  }
}

#solution-service .features__sec p {
  font-size: 13px;
  text-align: justify;
  line-height: 1.75;
  margin-top: 30px;
}

@media (min-width: 768px) {
  #solution-service .features__sec p {
    font-size: 0.86em;
    margin-top: 3.83em;
    width: 57.62em;
  }
}

@media all and (-ms-high-contrast: none) {
  #solution-service .features__sec p {
    text-justify: inter-ideograph;
  }
}

#solution-service .contact-area {
  margin-top: 0 !important;
}

@media (max-width: 767px) {
  body#mobile-communications .page__lead {
    position: relative;
  }
  body#mobile-communications .page__lead::before {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.3);
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  body#mobile-communications .page__lead > * {
    position: relative;
  }
}

@media (max-width: 767px) {
  body#mobile-communications .page__lead {
    background-image: url("../img_hc/top/pic_top_sol1@2x.jpg");
  }
}

@media (min-width: 768px) {
  body#mobile-communications .local-nav {
    width: 98vw;
  }
  body#mobile-communications .local-nav a {
    text-align: center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  body#mobile-communications .local-nav a span {
    font-size: 10px;
  }
}

@media (min-width: 901px) {
  body#mobile-communications .local-nav {
    width: 74.88em;
  }
}

@media (min-width: 1280px) {
  body#mobile-communications .local-nav {
    width: 62.5em;
  }
}

@media (max-width: 767px) {
  body#mobile-communications .c-sec:not(.contact-area):not(.contact-area2) {
    padding-bottom: 0;
  }
}

@media (min-width: 768px) {
  body#mobile-communications .solution-service__ttl {
    font-size: 1.31em;
  }
}

body#mobile-communications .solution-service__details h3 {
  color: #000;
}

@media (min-width: 768px) {
  body#mobile-communications .solution-service__details h3 {
    font-size: 1.69em;
    line-height: 1.5;
  }
}

@media (min-width: 768px) {
  body#mobile-communications .col__item--3 {
    margin-top: 3.75em;
  }
}

@media (min-width: 901px) {
  body#mobile-communications .col__item--3 {
    margin-left: 1.25em;
    margin-right: 1.25em;
    width: 14.38em;
  }
}

.mobile-communications__item {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  .mobile-communications__item {
    padding-bottom: 6.25em;
  }
}

@media (max-width: 767px) {
  .mobile-communications__contents {
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
  }
}

@media (min-width: 768px) {
  .mobile-communications__contents {
    justify-content: center;
  }
}

@media (max-width: 767px) {
  .mobile-communications__contents .col__item {
    width: 48.5%;
  }
  .mobile-communications__contents .col__item:not(:first-child) {
    margin-top: 40px;
  }
  .mobile-communications__contents .col__item:nth-child(2) {
    margin-top: 0 !important;
  }
  .mobile-communications__contents .col__item:nth-child(even) {
    margin-left: auto;
  }
}

@media (min-width: 768px) {
  .mobile-communications__contents .col__item {
    width: auto;
    margin: 2.5em 1.88em 0;
  }
  #sim-jp .mobile-communications__contents .col__item,
  #sim-foreigner .mobile-communications__contents .col__item {
    margin: 2.5em 1.88em 0;
  }
}

@media (min-width: 901px) {
  #sim-jp .mobile-communications__contents .col__item,
  #sim-foreigner .mobile-communications__contents .col__item {
    margin: 2.5em 3.13em 0;
  }
}

.mobile-communications__contents .col__item p {
  align-self: center;
  line-height: 1.44;
  letter-spacing: 0.07em;
  margin-top: 1.5em;
  text-align: center;
}

@media (min-width: 768px) {
  .mobile-communications__contents .col__item p {
    font-size: 1em;
  }
}

@media (min-width: 901px) {
  .mobile-communications__contents .col__item p {
    font-size: 1.06em;
  }
}

@media all and (-ms-high-contrast: none) {
  .mobile-communications__contents .col__item p {
    text-justify: auto;
  }
}

@media (max-width: 767px) {
  .mobile-communications__contents .col__item figure {
    text-align: center;
  }
  .mobile-communications__contents .col__item figure img {
    max-width: 80%;
    width: calc(307px * 0.5);
  }
}

#wi-ho .col__item--3:nth-child(1) img {
  width: 46.25%;
}

#wi-ho .col__item--3:nth-child(2) img {
  width: 49.38%;
}

#wi-ho .col__item--3:nth-child(3) img {
  width: 65.63%;
}

#wi-ho .col__item--3:nth-child(4) img {
  width: 60%;
}

#wi-ho .col__item--3:nth-child(5) img {
  width: 48.13%;
}

#wi-ho .col__item--3:nth-child(6) img {
  width: 65.63%;
}

#wi-ho .col__item--3:nth-child(7) img {
  width: 57.5%;
}

#sim-jp .col__item--3:nth-child(1) img {
  width: 79.38%;
}

#sim-jp .col__item--3:nth-child(2) img {
  width: 45.63%;
  transform: translate(-36%, -55%);
}

#sim-jp .col__item--3:nth-child(3) img {
  width: 28.75%;
  transform: translate(-50%, -55%);
}

#sim-foreigner .col__item--3:nth-child(1) img {
  width: 43.75%;
  transform: translate(-50%, -50%);
}

#sim-foreigner .col__item--3:nth-child(2) img {
  width: 43.13%;
  transform: translate(-50%, -50%);
}

#sim-foreigner .col__item--3:nth-child(3) img {
  width: 36.25%;
  transform: translate(-40%, -55%);
}

#ez .col__item--3:nth-child(1) img {
  width: 63.13%;
}

#ez .col__item--3:nth-child(2) img {
  width: 40%;
  transform: translate(-36%, -55%);
}

#ez .col__item--3:nth-child(3) img {
  width: 79.38%;
}

@media (min-width: 768px) {
  .mobile-communications__item {
    margin-top: 7.5em;
  }
  .local-nav + .mobile-communications__item {
    margin-top: 5em;
  }
}

.mobile-communications__logo {
  margin-top: 15px;
}

@media (min-width: 768px) {
  .mobile-communications__logo {
    margin-top: 1.13em;
  }
}

@media all and (-ms-high-contrast: none) {
  .mobile-communications__logo {
    min-height: 0%;
  }
}

.mobile-communications__logo--wiho {
  width: calc(321px * 0.5);
}

.mobile-communications__logo--wihosim {
  width: calc(130px * 0.7);
}

.mobile-communications__logo--ez {
  width: calc(469px * 0.3);
}

.mobile-communications__btn {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .mobile-communications__btn {
    margin-top: 5em;
  }
}

@media (max-width: 767px) {
  .sharing {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.sharing__logo {
  margin-top: 15px;
}

@media (min-width: 768px) {
  .sharing__logo {
    margin-top: 1.13em;
  }
}

.sharing__logo--biki {
  width: 101px;
}

@media (min-width: 768px) {
  body#digital-media .local-nav {
    width: 98vw;
  }
  body#digital-media .local-nav a {
    text-align: center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  body#digital-media .local-nav a span {
    font-size: 10px;
  }
}

@media (min-width: 901px) {
  body#digital-media .local-nav {
    width: 74.88em;
  }
}

@media (min-width: 1280px) {
  body#digital-media .local-nav {
    width: 62.5em;
  }
}

@media (min-width: 768px) {
  body#digital-media .solution-service__ttl {
    font-size: 1.07em;
  }
}

@media (min-width: 768px) {
  body#digital-media .solution-service__txt {
    margin-top: 1.71em;
  }
}

@media (max-width: 767px) {
  body#digital-media .contact-area {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .digital-media {
    margin-top: 5em;
  }
}

.digital-media__logo {
  margin-top: 15px;
}

@media (min-width: 768px) {
  .digital-media__logo {
    margin-top: 1.5em;
  }
}

.digital-media__logo--pinnar {
  width: calc(655px * 0.3);
}

@media all and (-ms-high-contrast: none) {
  .digital-media__logo--pinnar {
    height: 42px;
  }
}

.digital-media__logo--lockar {
  width: calc(246px * 0.7);
}

@media all and (-ms-high-contrast: none) {
  .digital-media__logo--lockar {
    height: 65px;
  }
}

.digital-media__logo--hodai {
  width: calc(432px * 0.4);
}

@media all and (-ms-high-contrast: none) {
  .digital-media__logo--hodai {
    height: 37px;
  }
}

#pinnar .scene__box {
  border: 1px solid #005bac;
  width: 92vw;
  margin-top: 60px;
}

@media (max-width: 767px) {
  #pinnar .scene__box {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

@media (min-width: 768px) {
  #pinnar .scene__box {
    width: 93.59%;
    max-width: 1028px;
    margin-top: 3.44em;
    padding: 2.5em 0 2.75em;
  }
}

@media (min-width: 1680px) {
  #pinnar .scene__box {
    width: 1200px !important;
    max-width: 1200px !important;
  }
}

#pinnar .page__lead-logo {
  width: 180px;
}

@media (max-width: 767px) {
  #pinnar .page__lead-logo {
    display: block;
    margin: 0 auto;
  }
}

@media (min-width: 768px) {
  #pinnar .page__lead-logo {
    width: 12.5em;
  }
}

#pinnar .screen {
  display: flex;
  margin-top: 60px;
}

@media (max-width: 767px) {
  #pinnar .screen {
    padding-left: 4vw;
    padding-right: 4vw;
    justify-content: space-between;
    padding-bottom: 60px;
  }
}

@media (min-width: 768px) {
  #pinnar .screen {
    justify-content: center;
    margin-top: 5.5em;
    padding-bottom: 5.63em;
  }
}

#pinnar .screen__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 45%;
}

@media (min-width: 768px) {
  #pinnar .screen__item {
    width: 22.5em;
  }
}

#pinnar .screen__item img {
  width: 63.06%;
}

#pinnar .screen__ttl {
  color: #005bac;
  font-size: 15px;
  margin-top: 0.75em;
}

@media (min-width: 768px) {
  #pinnar .screen__ttl {
    font-size: 1.29em;
    margin-top: 0.78em;
  }
}

#pinnar .screen__txt {
  font-size: 13px;
  margin-top: 0.25em;
}

@media (min-width: 768px) {
  #pinnar .screen__txt {
    font-size: 0.86em;
    margin-top: 0.52em;
  }
}

#pinnar .features {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  #pinnar .features {
    padding: 4.5em 0;
  }
}

#pinnar .features__lead {
  font-size: 13px;
}

@media (min-width: 768px) {
  #pinnar .features__lead {
    font-size: 0.86em;
    text-align: center;
  }
}

#pinnar .features__contents {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  #pinnar .features__contents {
    justify-content: center;
    margin-top: 2.5em;
  }
}

#pinnar .features__item {
  width: 48%;
}

@media (max-width: 767px) {
  #pinnar .features__item {
    margin-top: 30px;
  }
  #pinnar .features__item:nth-child(even) {
    margin-left: auto;
  }
}

@media (min-width: 768px) {
  #pinnar .features__item {
    width: 8.63em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #pinnar .features__item {
    margin: 20px 20px 0;
  }
}

@media (min-width: 901px) {
  #pinnar .features__item:not(:first-child) {
    margin-left: 2.5em;
  }
}

#pinnar .features__item:nth-child(1) img {
  width: 46.88%;
}

#pinnar .features__item:nth-child(2) img {
  width: 30%;
}

#pinnar .features__item:nth-child(3) img {
  width: 55.63%;
}

#pinnar .features__item:nth-child(4) img {
  width: 83.13%;
}

#pinnar .features__item:nth-child(5) img {
  width: 30%;
}

#pinnar .features__item:nth-child(6) img {
  width: 48.13%;
}

#pinnar .features__icon {
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40vw;
  height: 40vw;
}

@media (min-width: 768px) {
  #pinnar .features__icon {
    width: 8.63em;
    height: 8.63em;
  }
}

#pinnar .features__ttl,
#pinnar .scene__ttl {
  color: #005bac;
  font-weight: 500;
  text-align: center;
  margin-top: 1em;
  font-size: 15px;
}

@media (min-width: 768px) {
  #pinnar .features__ttl,
  #pinnar .scene__ttl {
    font-size: 1.06em;
    line-height: 1.41;
    letter-spacing: 0.01em;
    margin-top: 0.88em;
  }
}

@media (min-width: 768px) {
  #pinnar .scene {
    padding-top: 6.25em;
  }
}

@media (min-width: 768px) {
  #pinnar .scene__pic {
    margin-top: 0.63em;
  }
}

#pinnar .scene__contents {
  display: flex;
}

@media (max-width: 767px) {
  #pinnar .scene__contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  #pinnar .scene__contents {
    justify-content: center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #pinnar .scene__contents {
    width: 90%;
  }
}

#pinnar .scene__item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 768px) {
  #pinnar .scene__item {
    width: 33.33%;
  }
}

@media (min-width: 901px) {
  #pinnar .scene__item {
    width: 21.88em;
  }
}

#pinnar .scene__icon {
  background-color: #fff;
  position: relative;
  width: 50vw;
}

@media (max-width: 767px) {
  #pinnar .scene__icon {
    height: 50vw;
  }
}

@media (min-width: 768px) {
  #pinnar .scene__icon {
    width: 55.71%;
    padding-top: 55.71%;
    border-radius: 50%;
    margin-top: -27.86%;
  }
}

#pinnar .scene__icon img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%);
  width: 43.08%;
}

#pinnar .scene__ttl {
  position: relative;
  margin-top: -2.06em;
}

@media (min-width: 768px) {
  #pinnar .scene__ttl {
    line-height: 1.59;
    margin-top: -2.06em;
  }
}

#pinnar .scene__box h2 {
  font-weight: 500;
  color: #005bac;
  font-size: 16px;
}

@media (min-width: 768px) {
  #pinnar .scene__box h2 {
    font-size: 1.29em;
  }
}

#pinnar .scene__box-ttl {
  font-weight: bold;
  margin-top: 1em;
  font-size: 15px;
}

@media (max-width: 767px) {
  #pinnar .scene__box-ttl {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  #pinnar .scene__box-ttl {
    font-size: 1.06em;
  }
  #pinnar .scene__box-ttl span {
    margin-left: 1em;
  }
}

#pinnar .scene__box-txt {
  font-size: 13px;
  margin-top: 1.5em;
  text-align: justify;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (min-width: 768px) {
  #pinnar .scene__box-txt {
    font-size: 0.86em;
    margin-top: 1.46em;
    width: 90%;
  }
}

@media (min-width: 901px) {
  #pinnar .scene__box-txt {
    width: 70.18%;
  }
}

@media (min-width: 768px) {
  #pinnar .faq {
    padding-top: 6.25em;
  }
}

#pinnar .faq__list {
  width: 92vw;
}

@media (min-width: 768px) {
  #pinnar .faq__list {
    width: 93.59%;
    max-width: 1028px;
    margin-top: 1.25em;
  }
}

@media (min-width: 1680px) {
  #pinnar .faq__list {
    width: 1200px !important;
    max-width: 1200px !important;
  }
}

#pinnar .faq__item {
  border: 2px solid #fafafa;
  position: relative;
}

#pinnar .faq__item::before {
  position: absolute;
  background-color: #005bac;
  content: "";
  height: 1px;
  top: 29px;
  right: 15px;
  width: 16px;
}

@media (min-width: 768px) {
  #pinnar .faq__item::before {
    top: calc(3.13em - 1px);
    height: 2px;
    right: 2.69em;
    width: 1.5em;
  }
}

#pinnar .faq__item:not(:first-child) {
  margin-top: 20px;
}

@media (min-width: 768px) {
  #pinnar .faq__item:not(:first-child) {
    margin-top: 1.13em;
  }
}

#pinnar .faq__item dt {
  background-color: #fafafa;
  color: #005bac;
  display: flex;
  align-items: baseline;
  font-weight: 500;
  cursor: pointer;
}

@media (max-width: 767px) {
  #pinnar .faq__item dt {
    padding: 15px;
  }
}

@media (min-width: 768px) {
  #pinnar .faq__item dt {
    font-size: 1.07em;
    padding-left: 2em;
    align-items: center;
    height: 5.88em;
  }
}

#pinnar .faq__item dt::before {
  content: "Q\FF1A";
  font-size: 1.2em;
  margin-right: 0.5em;
}

#pinnar .faq__item dt::after {
  position: absolute;
  background-color: #005bac;
  content: "";
  transform: rotate(90deg);
  height: 1px;
  top: 29px;
  right: 15px;
  width: 16px;
  transition: transform 0.4s ease;
}

@media (min-width: 768px) {
  #pinnar .faq__item dt::after {
    font-size: 14px;
    top: calc(3.13em - 1px);
    height: 2px;
    right: 2.69em;
    width: 1.5em;
  }
}

@media (min-width: 901px) {
  #pinnar .faq__item dt::after {
    font-size: 1.25vw;
  }
}

@media (min-width: 1280px) {
  #pinnar .faq__item dt::after {
    font-size: 16px;
  }
}

@media (min-width: 1680px) {
  #pinnar .faq__item dt::after {
    font-size: 18.7px;
  }
}

#pinnar .faq__item.open dt::after {
  transform: rotate(0);
}

#pinnar .faq__item dd {
  position: relative;
  font-size: 0.86em;
  padding: 0 15px;
  line-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: padding 0.3s ease, line-height 0.3s ease, opacity 0.3s ease;
}

@media (max-width: 767px) {
  #pinnar .faq__item dd {
    text-align: justify;
  }
}

@media (min-width: 768px) {
  #pinnar .faq__item dd {
    padding: 0 5.63em;
  }
}

#pinnar .faq__item dd::before {
  content: "A\FF1A";
  font-size: 1.5em;
}

@media (min-width: 768px) {
  #pinnar .faq__item dd::before {
    position: absolute;
    top: 0.63em;
    left: 1.82em;
  }
}

#pinnar .faq__item.open dd {
  line-height: 1.75;
  opacity: 1;
  padding: 20px 15px;
}

@media (min-width: 768px) {
  #pinnar .faq__item.open dd {
    padding: 1.25em 5.63em;
    line-height: 1.75;
  }
}

#pinnar .faq__item.open dd p:not(:first-child) {
  margin-top: 1.75em;
}

@media (max-width: 767px) {
  #pinnar .case {
    padding-bottom: 0;
  }
}

@media (min-width: 768px) {
  #pinnar .case {
    padding-top: 6.25em;
  }
}

@media (max-width: 767px) {
  #pinnar .case .c-btn--big.solution-service__btn {
    width: 268px;
  }
  #pinnar .case .c-btn--big.solution-service__btn::before {
    top: calc(50% - 134px);
    left: calc(50% - 134px);
    height: 268px;
    width: 268px;
  }
}

@media (min-width: 768px) {
  #pinnar .case .c-btn--big.solution-service__btn {
    width: 18.13em;
  }
  #pinnar .case .c-btn--big.solution-service__btn::before {
    top: calc(50% - 9.06em);
    left: calc(50% - 9.06em);
    height: 18.13em;
    width: 18.13em;
  }
}

@media (max-width: 767px) {
  #pinnar .case + .outline {
    margin-top: 60px;
  }
}

@media (max-width: 767px) {
  #pinnar .outline .c-sec__heading {
    line-height: 1.25;
  }
}

#pinnar .outline a {
  line-height: 1.3;
  word-break: break-all;
}

@media (min-width: 768px) {
  #pinnar .solution-service__item {
    margin-top: 1.25em;
  }
}

@media (min-width: 901px) {
  #pinnar .contact-area2__item:last-child {
    padding: 0 6%;
  }
}

#pinnar .contact-area2__item:last-child .contact-area2__tel b {
  margin-left: 1em;
}

@media (min-width: 768px) {
  #pinnar .function,
  #nipponhodai .function {
    padding-top: 6.25em;
  }
}

@media (max-width: 767px) {
  #pinnar .function__sec,
  #nipponhodai .function__sec {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

@media (min-width: 768px) {
  #pinnar .function__sec,
  #nipponhodai .function__sec {
    height: 33.63em;
    width: 100%;
  }
}

#pinnar .function__sec:nth-of-type(odd),
#nipponhodai .function__sec:nth-of-type(odd) {
  background-color: #fafafa;
}

@media (min-width: 901px) {
  #pinnar .function__sec:nth-of-type(odd) .function__details,
  #nipponhodai .function__sec:nth-of-type(odd) .function__details {
    padding-left: 2em;
    padding-right: 4em;
  }
}

@media (min-width: 768px) {
  #pinnar .function__sec:nth-of-type(even) .function__inner,
  #nipponhodai .function__sec:nth-of-type(even) .function__inner {
    flex-direction: row-reverse;
  }
}

@media (min-width: 901px) {
  #pinnar .function__sec:nth-of-type(even) .function__details,
  #nipponhodai .function__sec:nth-of-type(even) .function__details {
    padding-left: 3em;
    padding-right: 4em;
  }
}

#pinnar .function__inner,
#nipponhodai .function__inner {
  display: flex;
  margin: 0 auto;
}

@media (max-width: 767px) {
  #pinnar .function__inner,
  #nipponhodai .function__inner {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  #pinnar .function__inner,
  #nipponhodai .function__inner {
    align-items: center;
  }
}

@media (min-width: 768px) {
  #pinnar .function__details,
  #nipponhodai .function__details {
    width: 50%;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #pinnar .function__details,
  #nipponhodai .function__details {
    padding-left: 4vw;
    padding-right: 4vw;
  }
}

#pinnar .function__details h2,
#nipponhodai .function__details h2 {
  font-size: 16px;
}

@media (min-width: 768px) {
  #pinnar .function__details h2,
  #nipponhodai .function__details h2 {
    font-size: 1.61em;
  }
}

#pinnar .function__details p,
#nipponhodai .function__details p {
  font-size: 13px;
  text-align: justify;
  margin-top: 1em;
}

@media (min-width: 768px) {
  #pinnar .function__details p,
  #nipponhodai .function__details p {
    font-size: 0.86em;
    line-height: 1.75;
    margin-top: 1.71em;
  }
}

@media all and (-ms-high-contrast: none) {
  #pinnar .function__details p,
  #nipponhodai .function__details p {
    text-justify: inter-ideograph;
  }
}

@media (max-width: 767px) {
  #pinnar .function__pic,
  #nipponhodai .function__pic {
    margin-top: 30px;
    text-align: center;
    width: 100%;
  }
}

@media (min-width: 768px) {
  #pinnar .function__pic,
  #nipponhodai .function__pic {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 33.63em;
    width: 50%;
  }
}

#pinnar .function__sec:nth-of-type(1) img {
  width: 38%;
}

#pinnar .function__sec:nth-of-type(2) img {
  width: 38%;
}

#pinnar .function__sec:nth-of-type(3) img {
  width: 80%;
}

#pinnar .function__sec:nth-of-type(4) img {
  width: 38%;
}

#pinnar .function__sec:nth-of-type(5) img {
  width: 100%;
}

#pinnar .function__sec:nth-of-type(6) img {
  width: 60%;
}

#nipponhodai .function__sec:nth-of-type(odd) {
  background-color: inherit;
}

#nipponhodai .function__sec:nth-of-type(even) {
  background-color: #fafafa;
}

#nipponhodai .function__sec:nth-of-type(1) img {
  width: 87.5%;
}

#nipponhodai .function__sec:nth-of-type(2) img {
  width: 39.84%;
}

#nipponhodai .function__sec:nth-of-type(3) img {
  width: 39.84%;
}

#nipponhodai .features__more,
#nipponhodai .function {
  padding-top: 0;
}

@media (max-width: 767px) {
  #pinnar .local-nav,
  #lockar .local-nav,
  #biki .local-nav {
    width: 100% !important;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #pinnar .local-nav,
  #lockar .local-nav,
  #biki .local-nav {
    width: 98vw;
  }
  #pinnar .local-nav ul,
  #lockar .local-nav ul,
  #biki .local-nav ul {
    justify-content: center;
  }
  #pinnar .local-nav li,
  #lockar .local-nav li,
  #biki .local-nav li {
    width: auto;
  }
  #pinnar .local-nav li a,
  #lockar .local-nav li a,
  #biki .local-nav li a {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
}

#pinnar .outline,
#lockar .outline,
#biki .outline {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  #pinnar .outline,
  #lockar .outline,
  #biki .outline {
    margin-top: 6.25em;
    padding-top: 6.25em;
    padding-bottom: 6.25em;
  }
}

#pinnar .outline__heading,
#lockar .outline__heading,
#biki .outline__heading {
  font-weight: 500;
  font-size: 16px;
}

@media (max-width: 767px) {
  #pinnar .outline__heading,
  #lockar .outline__heading,
  #biki .outline__heading {
    text-align: center;
  }
}

@media (min-width: 768px) {
  #pinnar .outline__heading,
  #lockar .outline__heading,
  #biki .outline__heading {
    font-size: 1.07em;
  }
}

#pinnar .outline__contents,
#lockar .outline__contents,
#biki .outline__contents {
  margin-top: 30px;
}

@media (min-width: 768px) {
  #pinnar .outline__contents,
  #lockar .outline__contents,
  #biki .outline__contents {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: 90%;
    margin-top: 2.5em;
  }
}

@media (min-width: 901px) {
  #pinnar .outline__contents,
  #lockar .outline__contents,
  #biki .outline__contents {
    width: 51.38em;
  }
}

@media (min-width: 768px) {
  #pinnar .outline__qr,
  #lockar .outline__qr,
  #biki .outline__qr {
    width: 8.56em;
  }
}

@media (min-width: 768px) {
  #pinnar .outline__details,
  #lockar .outline__details,
  #biki .outline__details {
    padding-left: 2.5em;
    width: calc(100% - 8.56em);
  }
}

#pinnar .outline__details li,
#lockar .outline__details li,
#biki .outline__details li {
  font-size: 13px;
  line-height: 2.13;
}

@media (min-width: 768px) {
  #pinnar .outline__details li,
  #lockar .outline__details li,
  #biki .outline__details li {
    font-size: 0.86em;
  }
}

#pinnar .outline__details a,
#lockar .outline__details a,
#biki .outline__details a {
  color: #000;
}

#pinnar .outline__urls,
#lockar .outline__urls,
#biki .outline__urls {
  text-indent: 0;
}

@media (min-width: 768px) {
  #pinnar .outline__urls,
  #lockar .outline__urls,
  #biki .outline__urls {
    display: flex;
  }
}

#pinnar .outline__item,
#lockar .outline__item,
#biki .outline__item {
  display: flex;
  align-items: center;
}

#pinnar .outline__item b,
#lockar .outline__item b,
#biki .outline__item b {
  margin-left: 0.5em;
}

#pinnar .outline__item a,
#lockar .outline__item a,
#biki .outline__item a {
  color: #000;
  margin-left: 0.5em;
}

@media (max-width: 767px) {
  #pinnar .outline__item:not(:first-child),
  #lockar .outline__item:not(:first-child),
  #biki .outline__item:not(:first-child) {
    margin-top: 1em;
  }
}

@media (min-width: 768px) {
  #pinnar .outline__item:not(:first-child),
  #lockar .outline__item:not(:first-child),
  #biki .outline__item:not(:first-child) {
    margin-left: 2em;
  }
}

@media (min-width: 768px) {
  #pinnar .outline__item .icon__apple,
  #lockar .outline__item .icon__apple,
  #biki .outline__item .icon__apple {
    width: 1.81em;
  }
}

@media (min-width: 768px) {
  #pinnar .outline__item .icon__android,
  #lockar .outline__item .icon__android,
  #biki .outline__item .icon__android {
    width: 1.56em;
  }
}

#pinnar .outline__note,
#lockar .outline__note,
#biki .outline__note {
  margin-top: 20px;
}

@media (min-width: 768px) {
  #pinnar .outline__note,
  #lockar .outline__note,
  #biki .outline__note {
    margin-top: 2em;
  }
}

#pinnar .outline__note p,
#lockar .outline__note p,
#biki .outline__note p {
  font-size: 13px;
}

@media (min-width: 768px) {
  #pinnar .outline__note p,
  #lockar .outline__note p,
  #biki .outline__note p {
    font-size: 0.86em;
  }
}

#nipponhodai .page__lead {
  position: relative;
}

#nipponhodai .page__lead::before {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.3);
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

#nipponhodai .page__lead > * {
  position: relative;
}

@media (max-width: 767px) {
  #nipponhodai .page__lead {
    background-position: right 10% center;
  }
}

#nipponhodai .page__lead-logo {
  width: 170px;
}

@media (max-width: 767px) {
  #nipponhodai .page__lead-logo {
    display: block;
    margin: 0 auto;
  }
}

@media (min-width: 768px) {
  #nipponhodai .page__lead-logo {
    width: 12.5em;
  }
}

#nipponhodai .screen {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 50px;
}

@media (min-width: 768px) {
  #nipponhodai .screen {
    margin-top: 4em;
  }
}

@media (min-width: 768px) {
  #nipponhodai .screen img {
    width: 80vw;
    max-width: 700px;
  }
}

#nipponhodai .features__item:nth-child(1) img {
  width: 46.93%;
}

#nipponhodai .features__item:nth-child(2) img {
  width: 42.98%;
}

#nipponhodai .features__item:nth-child(3) img {
  width: 49.12%;
}

#nipponhodai .features__item:nth-child(3) .col__ttl {
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

#nipponhodai .page__lead-txt:last-child,
#lockar .page__lead-txt:last-child {
  width: auto;
}

#nipponhodai .features,
#lockar .features,
#biki .features {
  background-color: #fafafa;
  margin-top: 60px;
}

@media (min-width: 768px) {
  #nipponhodai .features,
  #lockar .features,
  #biki .features {
    margin-top: 5em;
    padding: 6.25em 0;
  }
}

#nipponhodai .features .col__icon img,
#lockar .features .col__icon img,
#biki .features .col__icon img {
  width: 48.13%;
}

#nipponhodai .features__contents,
#lockar .features__contents,
#biki .features__contents {
  display: flex;
  margin-top: 20px;
}

@media (max-width: 767px) {
  #nipponhodai .features__contents,
  #lockar .features__contents,
  #biki .features__contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  #nipponhodai .features__contents,
  #lockar .features__contents,
  #biki .features__contents {
    margin-top: 1.25em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #nipponhodai .features__contents,
  #lockar .features__contents,
  #biki .features__contents {
    justify-content: space-between;
    width: 92vw;
  }
}

#nipponhodai .features__btn,
#lockar .features__btn,
#biki .features__btn {
  margin-top: 40px;
}

@media (min-width: 768px) {
  #nipponhodai .features__btn,
  #lockar .features__btn,
  #biki .features__btn {
    margin-top: 5em;
  }
}

#lockar .page__lead {
  background-position: center center;
}

#lockar .page__lead-logo {
  width: 160px;
}

@media (min-width: 768px) {
  #lockar .page__lead-logo {
    width: 10em;
  }
}

@media (min-width: 768px) {
  #lockar .page__lead-txt {
    text-align: center;
  }
}

#lockar .screen {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 60px;
}

@media (max-width: 767px) {
  #lockar .screen {
    padding-left: 4vw;
    padding-right: 4vw;
    text-align: center;
  }
}

@media (min-width: 768px) {
  #lockar .screen {
    margin-top: 5em;
  }
}

@media (min-width: 768px) {
  #lockar .screen img {
    width: 80vw;
    max-width: 624px;
  }
}

@media (min-width: 901px) {
  #lockar .screen img {
    width: 39em;
  }
}

@media (min-width: 901px) {
  #lockar .col__item--3:not(:first-child) {
    margin-left: 2.5em;
  }
}

#lockar .features__item:nth-child(1) img {
  width: 24.56%;
}

#lockar .features__item:nth-child(2) img {
  width: 68.42%;
}

#lockar .features__item:nth-child(3) img {
  width: 32.89%;
}

@media (min-width: 768px) {
  #lockar .merit {
    padding-top: 6.25em;
  }
}

#lockar .merit__item {
  background-color: #fafafa;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-top: 20px;
}

@media (max-width: 767px) {
  #lockar .merit__item {
    padding: 30px 15px;
  }
}

@media (min-width: 768px) {
  #lockar .merit__item {
    padding: 2.5em 0;
    margin-top: 1.25em;
  }
}

#lockar .merit__item + .merit__item {
  margin-top: 40px;
}

@media (min-width: 768px) {
  #lockar .merit__item + .merit__item {
    margin-top: 2.75em;
  }
}

#lockar .merit__list {
  display: flex;
}

@media (max-width: 767px) {
  #lockar .merit__list {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #lockar .merit__list {
    padding: 0 4vw;
    justify-content: space-between;
  }
}

#lockar .merit__heading {
  color: #005bac;
  font-weight: bold;
  font-size: 17px;
}

@media (min-width: 768px) {
  #lockar .merit__heading {
    font-size: 1.34em;
  }
}

#lockar .merit__point {
  font-weight: 500;
  margin-top: 0.5em;
  font-size: 15px;
}

@media (min-width: 768px) {
  #lockar .merit__point {
    font-size: 1.06em;
  }
}

#lockar .merit__point span {
  font-weight: bold;
  font-size: 1.25em;
  margin-left: 0.5em;
}

#lockar .merit__list {
  margin-top: 20px;
}

@media (min-width: 768px) {
  #lockar .merit__list {
    margin-top: 2em;
  }
}

#lockar .merit__list--customer .merit__list-item:nth-child(1) img {
  width: 35.53%;
}

#lockar .merit__list--customer .merit__list-item:nth-child(2) img {
  width: 24.56%;
}

#lockar .merit__list--customer .merit__list-item:nth-child(3) img {
  width: 46.93%;
}

#lockar .merit__list--store .merit__list-item:nth-child(1) img {
  transform: translate(-50%, -60%);
  width: 39.04%;
}

#lockar .merit__list--store .merit__list-item:nth-child(2) img {
  width: 33.77%;
}

#lockar .merit__list--store .merit__list-item:nth-child(3) img {
  transform: translate(-50%, -60%);
  width: 36.84%;
}

#lockar .merit__txt {
  margin-top: 0.5em;
}

@media (min-width: 901px) {
  #lockar .merit__txt {
    width: 90%;
  }
}

#lockar .howto {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  #lockar .howto {
    padding-top: 6.25em;
  }
}

#lockar .howto__sec {
  background-color: #fafafa;
  padding: 30px 15px;
}

@media (min-width: 768px) {
  #lockar .howto__sec {
    padding: 2.5em 0;
  }
}

@media (min-width: 901px) {
  #lockar .howto__sec {
    width: 68.63em;
  }
}

@media (min-width: 768px) {
  #lockar .howto__sec:first-of-type {
    margin-top: 1.25em;
  }
}

#lockar .howto__sec + .howto__sec {
  margin-top: 50px;
}

@media (min-width: 768px) {
  #lockar .howto__sec + .howto__sec {
    margin-top: 4.5em;
  }
}

#lockar .howto__sec h2 {
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
  font-weight: bold;
  color: #005bac;
  text-align: center;
}

#lockar .howto__contents {
  position: relative;
  display: flex;
  z-index: 1;
  margin-top: 20px;
}

@media (max-width: 767px) {
  #lockar .howto__contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  #lockar .howto__contents {
    justify-content: space-between;
    margin-top: 1.5em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #lockar .howto__contents {
    padding: 0 4vw;
  }
}

@media (min-width: 901px) {
  #lockar .howto__contents {
    justify-content: center;
  }
}

#lockar .howto__item {
  position: relative;
}

@media (max-width: 767px) {
  #lockar .howto__item {
    display: flex;
    align-items: center;
  }
}

@media (min-width: 768px) {
  #lockar .howto__item {
    width: 21%;
  }
}

@media (min-width: 901px) {
  #lockar .howto__item {
    width: 18.75%;
  }
  #lockar .howto__item:not(:first-child) {
    margin-left: 6.25%;
  }
}

@media (max-width: 767px) {
  #lockar .howto__item:not(:first-child) {
    margin-top: 35px;
  }
}

#lockar .howto__item:not(:first-child) .howto__icon::before {
  position: absolute;
  background: url("../img_hc/common/icon_right.png") no-repeat center center;
  background-size: 100% auto;
  content: "";
  height: 1.63em;
  width: 0.81em;
}

@media (max-width: 767px) {
  #lockar .howto__item:not(:first-child) .howto__icon::before {
    bottom: calc(100% + 5px);
    transform: rotate(90deg);
  }
}

@media (min-width: 768px) {
  #lockar .howto__item:not(:first-child) .howto__icon::before {
    top: calc(50% - 0.81em);
    right: 130%;
  }
}

@media (min-width: 901px) {
  #lockar .howto__item:not(:first-child) .howto__icon::before {
    right: 140%;
  }
}

@media (min-resolution: 2dppx) {
  #lockar .howto__item:not(:first-child) .howto__icon::before {
    background-image: url("../img_hc/common/icon_right@2x.png");
  }
}

#lockar .howto__sec--customer .howto__item:nth-child(1) img {
  width: 33.53%;
}

#lockar .howto__sec--customer .howto__item:nth-child(2) img {
  transform: translate(-45%, -45%);
  width: 44.71%;
}

#lockar .howto__sec--customer .howto__item:nth-child(3) img {
  width: 47.65%;
}

#lockar .howto__sec--customer .howto__item:nth-child(4) img {
  width: 28.24%;
}

#lockar .howto__sec--store .howto__item:nth-child(1) img {
  width: 34.12%;
}

#lockar .howto__sec--store .howto__item:nth-child(2) img {
  width: 31.18%;
}

#lockar .howto__sec--store .howto__item:nth-child(3) img {
  width: 29.41%;
}

#lockar .howto__sec--store .howto__item:nth-child(4) img {
  width: 34.71%;
}

#lockar .howto__icon {
  position: relative;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}

@media (max-width: 767px) {
  #lockar .howto__icon {
    height: 30vw;
    width: 30vw;
    flex: 0 0 auto;
  }
}

@media (min-width: 768px) {
  #lockar .howto__icon {
    margin: 0 auto;
    width: 70.83%;
    padding-top: 70.83%;
  }
}

#lockar .howto__icon img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
  #lockar .howto__details {
    flex: 1 1 auto;
    padding-left: 1em;
  }
}

@media (min-width: 768px) {
  #lockar .howto__details {
    margin-top: 1em;
  }
}

#lockar .howto__txt {
  margin-top: 0.5em;
}

@media (min-width: 768px) {
  #lockar .price {
    padding-top: 6.25em;
  }
}

#lockar .price__contents {
  display: flex;
  margin-top: 20px;
}

@media (max-width: 767px) {
  #lockar .price__contents {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  #lockar .price__contents {
    margin-top: 1.25em;
    justify-content: space-between;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  #lockar .price__contents {
    width: 90vw;
  }
}

#lockar .price__sec {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (max-width: 767px) {
  #lockar .price__sec:not(:first-child) {
    margin-top: 40px;
  }
}

@media (min-width: 768px) {
  #lockar .price__sec {
    width: 47%;
  }
}

@media (min-width: 901px) {
  #lockar .price__sec {
    width: 46.88%;
  }
  #lockar .price__sec:not(:first-child) {
    margin-left: 4em;
  }
}

#lockar .price__sec h2 {
  font-weight: bold;
}

#lockar .price__txt {
  margin-top: 0.5em;
}

@media (max-width: 767px) {
  #lockar .price__txt span {
    font-size: 12px;
  }
}

@media (max-width: 767px) and (max-width: 374px) {
  #lockar .price__txt span {
    font-size: 11px;
  }
}

#lockar .price__tourist {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
  width: 100%;
}

@media (min-width: 768px) {
  #lockar .price__tourist {
    margin-top: 2.5em;
  }
}

#lockar .price__tourist-item {
  background-color: #fafafa;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 48.5%;
  padding: 30px 0;
}

@media (min-width: 768px) {
  #lockar .price__tourist-item {
    width: 48%;
    padding: 1.88em 0;
  }
}

#lockar .price__tourist-item .price__txt {
  text-align: center;
}

#lockar .price__tourist-item:nth-child(1) img {
  width: 45.83%;
}

#lockar .price__tourist-item:nth-child(2) img {
  width: 33.33%;
}

#lockar .price__tourist-item h3 {
  font-weight: bold;
  color: #005bac;
}

#lockar .price__pic {
  position: relative;
  background-color: #fff;
  border-radius: 50%;
  padding-top: 47.37%;
  width: 47.37%;
  margin-top: 1.13em;
}

#lockar .price__pic span,
#lockar .price__pic img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#lockar .price__pic2 {
  background-color: #fafafa;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

@media (max-width: 767px) {
  #lockar .price__pic2 {
    margin-top: 20px;
    min-height: 60vw;
  }
}

@media (min-width: 768px) {
  #lockar .price__pic2 {
    flex: 1 1 auto;
    margin-top: 2.5em;
  }
}

#lockar .price__ttl {
  font-weight: bold;
  margin-top: 1em;
  text-align: center;
}

#lockar .price__ttl b {
  font-family: "Montserrat", sans-serif;
  font-size: 1.82em;
  margin: 0 0.1em;
}

#biki .page__lead {
  position: relative;
}

#biki .page__lead::before {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.2);
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

#biki .page__lead > * {
  position: relative;
}

@media (max-width: 767px) {
  #biki .page__lead {
    background-position: right -400px center;
  }
}

#biki .page__lead-logo {
  width: 101px;
}

#biki .lead {
  padding: 60px 0 0 !important;
}

@media (min-width: 768px) {
  #biki .lead {
    padding: 6.25em 0;
  }
}

#biki .lead__container {
  position: relative;
}

@media (max-width: 767px) {
  #biki .lead__container {
    width: 100%;
  }
}

@media all and (-ms-high-contrast: none) {
  #biki .lead__container {
    min-height: 0%;
  }
}

@media (max-width: 767px) {
  #biki .lead__pic {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  #biki .lead__pic img {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
}

#biki .lead__details {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (max-width: 767px) {
  #biki .lead__details {
    position: relative;
    padding: 30px 4vw;
  }
}

@media (min-width: 768px) {
  #biki .lead__details {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

#biki .lead__inner {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 30px 20px;
}

@media (min-width: 768px) {
  #biki .lead__inner {
    padding: 5em;
    width: 61.75%;
  }
}

@media (max-width: 767px) {
  #biki .features {
    margin-top: 0;
  }
}

#biki .features__item:nth-child(1) img {
  width: 36.84%;
}

#biki .features__item:nth-child(2) img {
  width: 39.47%;
  transform: translate(-30%, -50%);
}

#biki .features__item:nth-child(3) img {
  width: 43.86%;
}

@media (min-width: 768px) {
  #biki .howto {
    padding: 6.25em 0;
  }
}

#biki .howto__item:nth-child(1) img {
  width: 6.75em;
  align-self: flex-end;
}

#biki .howto__item:nth-child(2) img {
  width: 13.69em;
}

#biki .howto__item:nth-child(3) img {
  width: 13.69em;
  align-self: flex-start;
}

@media (min-width: 901px) {
  #biki .howto__item {
    width: 18.13em;
  }
  #biki .howto__item:not(:first-child) {
    margin-left: 2.5em;
  }
}

#biki .howto__item p {
  margin-top: 0.75em;
  max-width: 100%;
}

#biki .howto__pic {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (min-width: 768px) {
  #biki .howto__pic {
    height: 11.25em;
  }
}

#biki .review {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  #biki .review {
    padding: 6.25em 0;
  }
}

#biki .review__contents {
  margin-top: 20px;
}

@media (min-width: 768px) {
  #biki .review__contents {
    margin-top: 1.25em;
  }
}

#biki .review__item {
  background-color: #fff;
  padding: 20px;
}

@media (min-width: 768px) {
  #biki .review__item {
    padding: 2.5em;
  }
}

#biki .review__item:not(:first-child) {
  margin-top: 1.56em;
}

@media (min-width: 768px) {
  #biki .review__head {
    display: flex;
    align-items: center;
  }
}

#biki .review__head h2 {
  font-weight: 500;
  font-size: 16px;
}

@media (min-width: 768px) {
  #biki .review__head h2 {
    font-size: 1.06em;
    margin-left: 0.82em;
  }
}

#biki .review__stars {
  display: flex;
  justify-content: space-between;
  width: 142px;
}

@media (min-width: 768px) {
  #biki .review__stars {
    width: 8.88em;
  }
}

#biki .review__stars img {
  width: 17.61%;
}

#biki .review__stars.is-4 img:last-child {
  visibility: hidden;
}

#biki .review__stars.is-3 img:last-child,
#biki .review__stars.is-3 img:nth-last-child(2) {
  visibility: hidden;
}

#biki .review__stars.is-2 img:last-child,
#biki .review__stars.is-2 img:nth-last-child(2),
#biki .review__stars.is-2 img:nth-child(3) {
  visibility: hidden;
}

#biki .review__stars.is-1 img:not(:first-child) {
  visibility: hidden;
}

#biki .review__meta {
  display: flex;
  margin-top: 0.25em;
}

#biki .review__date {
  margin-left: 1em;
}

#biki .review__txt {
  font-size: 0.86em;
  margin-top: 0.86em;
}

#biki .biki__btn {
  margin: 40px auto 0;
}

@media (min-width: 768px) {
  #biki .biki__btn {
    margin: 5em auto 0;
  }
}

@media (min-width: 768px) {
  .business__contents {
    margin-top: 5em;
  }
}

@media (max-width: 767px) {
  #rental .page__heading::before {
    content: "\a0";
  }
}

@media (max-width: 767px) {
  #rental .page__lead {
    position: relative;
  }
  #rental .page__lead::before {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.3);
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  #rental .page__lead > * {
    position: relative;
  }
}

@media (max-width: 767px) {
  #rental .page__lead {
    background-image: url("../img_hc/service/biz_pic1@2x.jpg");
  }
}

@media (min-width: 768px) {
  #rental .products {
    padding: 6.44em 0 4.94em;
  }
}

@media (min-width: 768px) {
  #rental .solution-service__item:first-of-type {
    margin-top: 1.88em;
  }
}

@media (min-width: 768px) {
  #rental .solution-service__btn {
    margin-top: 2.5em;
  }
}

#rental .features {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  #rental .features {
    padding: 7.5em 0;
  }
}

@media (min-width: 768px) {
  #rental .features__item p {
    margin-bottom: 1.75em;
  }
}

#rental .features__item:nth-child(1) img {
  width: 16.44em;
  height: 15.38em;
}

#rental .features__item:nth-child(2) img {
  width: 12.63em;
  height: 9.88em;
}

#rental .features__item:nth-child(3) img {
  width: 11em;
  height: 10.75em;
}

@media (min-width: 768px) {
  #rental .features__pic {
    display: flex;
    align-items: center;
    height: 15.38em;
  }
}

@media (max-width: 767px) {
  #rental .faq {
    padding-bottom: 0;
  }
}

@media (min-width: 768px) {
  #rental .faq {
    padding-top: 7.5em;
  }
}

#rental .faq__list li:not(:first-child) {
  margin-top: 2em;
}

#rental .faq__list a {
  display: flex;
  color: #005bac;
  align-items: center;
}

#rental .faq__list a::before {
  content: "Q\FF1A";
  font-weight: bold;
}

@media (max-width: 767px) {
  #rental .faq__list a::before {
    align-self: baseline;
  }
}

@media (min-width: 768px) {
  #rental .faq__list a::before {
    line-height: 1;
    font-size: 1.06em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  #rental .faq__list a:hover span {
    text-decoration: underline;
  }
}

#rental .faq__list span {
  color: #000;
}

@media (min-width: 768px) {
  #rental .faq__list span {
    font-size: 0.86em;
  }
}

#rental .faq__list svg {
  margin-left: 0.5em;
  width: 1.06em;
  height: 0.75em;
  flex: 0 0 auto;
  align-self: center;
}

#rental .faq__link {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin-top: 30px;
}

@media (min-width: 768px) {
  #rental .faq__link {
    margin-top: 2em;
    width: 90vw;
  }
}

@media (min-width: 901px) {
  #rental .faq__link {
    width: 64.25em;
  }
}

#rental .faq__link a {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  color: #005bac;
}

@media (hover: hover), (-ms-high-contrast: none) {
  #rental .faq__link a:hover span {
    text-decoration: underline;
  }
}

@media (min-width: 768px) {
  #rental .faq__link span {
    font-size: 0.86em;
  }
}

#rental .faq__link svg {
  margin-left: 0.5em;
  width: 1.06em;
  height: 0.75em;
}

#rental .faq__btn {
  margin-top: 40px;
}

@media (min-width: 768px) {
  #rental .faq__btn {
    margin-top: 5em;
  }
}

@media (max-width: 767px) {
  body#alliance .page__lead {
    position: relative;
  }
  body#alliance .page__lead::before {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.2);
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  body#alliance .page__lead > * {
    position: relative;
  }
}

@media (max-width: 767px) {
  body#alliance .page__lead {
    background-position: left -50vw center;
  }
}

body#alliance .features {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  body#alliance .features {
    padding: 6.25em 0;
  }
}

@media (max-width: 767px) {
  body#alliance .features__contents {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  body#alliance .features__contents {
    display: flex;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  body#alliance .features__contents {
    width: 90vw;
    justify-content: space-between;
  }
}

body#alliance .features__item:nth-child(1) img {
  width: 4.56em;
}

body#alliance .features__item:nth-child(2) img {
  width: 4.75em;
}

body#alliance .features__item:nth-child(3) img {
  width: 4.69em;
}

@media (min-width: 768px) {
  body#alliance .plan {
    padding: 6.25em 0;
  }
}

body#alliance .plan__contents {
  flex-wrap: wrap;
}

@media (min-width: 768px) and (max-width: 900px) {
  body#alliance .plan__contents {
    justify-content: center;
    width: 630px;
  }
}

@media (min-width: 768px) {
  body#alliance .plan__item {
    width: 14.25em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  body#alliance .plan__item {
    margin: 20px 40px;
  }
}

@media (min-width: 768px) {
  body#alliance .plan__item .c-btn,
  body#alliance .plan__item .footer__pagetop {
    margin-top: auto;
  }
}

@media (min-width: 768px) {
  body#alliance .plan__item.col__item .c-btn,
  body#alliance .plan__item.col__item .footer__pagetop {
    width: 14.25em;
  }
}

@media (min-width: 768px) {
  body#alliance .plan__item.col__item .c-btn::before,
  body#alliance .plan__item.col__item .footer__pagetop::before {
    top: calc(50% - 7.13em);
    left: calc(50% - 7.13em);
    height: 14.25em;
    width: 14.25em;
  }
}

body#alliance .plan__item.col__item p {
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
  margin-bottom: 1em;
}

body#alliance .plan__item:nth-child(1) img {
  width: 7.63em;
}

body#alliance .plan__item:nth-child(2) img {
  width: 9.56em;
}

body#alliance .plan__item:nth-child(3) img {
  width: 8.44em;
}

body#alliance .plan__item:nth-child(4) img {
  width: 10.81em;
}

@media (min-width: 768px) {
  body#alliance .plan__pic {
    display: flex;
    align-items: center;
    height: 11.25em;
  }
}

body#alliance .plan__btn {
  margin-top: 4em;
}

body#alliance .solution {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  body#alliance .solution {
    padding: 6.25em 0;
  }
}

@media (max-width: 767px) {
  body#alliance .solution__contents {
    margin-top: 20px;
    width: auto;
  }
}

@media (min-width: 768px) {
  body#alliance .solution__contents {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 0.63em;
  }
}

@media (min-width: 768px) {
  body#alliance .solution__contents .col__item--3 {
    margin: 4em 3.13em 0;
  }
}

@media (min-width: 1680px) {
  body#alliance .solution__contents .col__item--3 {
    margin-left: 2.5em;
    margin-right: 2.5em;
  }
}

body#alliance .solution__item:nth-child(1) img {
  width: 4em;
}

body#alliance .solution__item:nth-child(2) img {
  width: 3.94em;
}

body#alliance .solution__item:nth-child(3) img {
  width: 5.31em;
}

body#alliance .solution__item:nth-child(4) img {
  width: 4.81em;
}

body#alliance .solution__item:nth-child(5) img {
  width: 3.44em;
}

body#alliance .case {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  body#alliance .case {
    padding-top: 6.25em;
  }
}

body#alliance .case-item {
  background-color: #fafafa;
  padding: 20px 20px 30px;
}

@media (min-width: 768px) {
  body#alliance .case-item {
    padding: 5.1%;
  }
}

body#alliance .case-item:first-of-type {
  margin-top: 20px;
}

@media (min-width: 768px) {
  body#alliance .case-item:first-of-type {
    margin-top: 1.25em;
  }
}

body#alliance .case-item + .case-item {
  margin-top: 40px;
}

@media (min-width: 768px) {
  body#alliance .case-item + .case-item {
    margin-top: 4em;
  }
}

@media (min-width: 768px) {
  body#alliance .case-item--ph {
    display: flex;
    align-items: flex-start;
  }
}

body#alliance .case-item .c-btn,
body#alliance .case-item .footer__pagetop {
  margin-top: 1em;
}

@media (min-width: 768px) {
  body#alliance .case-item .c-btn,
  body#alliance .case-item .footer__pagetop {
    margin-left: auto;
  }
}

@media (min-width: 768px) {
  body#alliance .case-item__pic {
    width: 42.99%;
    flex: 0 0 auto;
  }
}

@media (min-width: 768px) {
  body#alliance .case-item__details {
    flex: 1 1 auto;
    padding-left: 5.1%;
  }
}

body#alliance .case-item__ttl {
  color: #005bac;
  font-size: 18px;
  margin-top: 20px;
}

@media (min-width: 768px) {
  body#alliance .case-item__ttl {
    font-size: 1.38em;
    margin-top: -0.36em;
  }
}

@media (max-width: 767px) {
  body#alliance .case-item > .case-item__ttl {
    margin-top: 0;
  }
}

body#alliance .case-item__service {
  font-size: 12px;
  padding-bottom: 1.67em;
  margin-bottom: 1.5em;
  border-bottom: 1px solid #bfbfbf;
}

@media (min-width: 768px) {
  body#alliance .case-item__service {
    font-size: 0.75em;
    padding-bottom: 1.67em;
    margin-bottom: 1.5em;
  }
}

body#alliance .case-item__heading {
  color: #000;
  font-weight: bold;
}

body#alliance .case-item__txt {
  margin-top: 0.75em;
}

body#alliance .case-item__tags {
  display: flex;
  flex-wrap: wrap;
}

body#alliance .case-item__tag {
  background-color: #005bac;
  color: #fff;
  font-size: 12px;
  padding: 0 0.5em;
  line-height: 1.83;
  height: 1.83em;
  margin-right: 1.5em;
  margin-top: 1em;
}

@media (min-width: 768px) {
  body#alliance .case-item__tag {
    font-size: 0.75em;
  }
}

body#alliance .case-item__link {
  margin-top: 0.25em;
}

body#alliance .case-item__link a {
  color: #005bac;
  font-size: 12px;
  line-height: 1;
}

@media (min-width: 768px) {
  body#alliance .case-item__link a {
    font-size: 0.75em;
  }
}

@media (max-width: 767px) {
  body#alliance .case__container {
    padding-top: 0;
    padding-bottom: 0;
  }
}

body#alliance .flex2col figure img {
  width: 100% !important;
}

body#alliance .article__body p.case-item__list-ttl {
  margin-top: -0.25em;
}

body#alliance .case-item__list {
  margin-top: 20px;
  border-top: 1px solid #bfbfbf;
}

@media (min-width: 768px) {
  body#alliance .case-item__list {
    display: flex;
    flex-wrap: wrap;
    margin-top: 1.5em;
  }
}

body#alliance .case-item__list-item {
  margin-top: 0 !important;
  border-bottom: 1px solid #bfbfbf;
}

@media (min-width: 768px) {
  body#alliance .case-item__list-item {
    display: flex;
    width: 50%;
  }
}

body#alliance .case-item__list-item dt {
  font-weight: 500;
  padding: 1em 0 0;
}

@media (min-width: 768px) {
  body#alliance .case-item__list-item dt {
    width: 7em;
    flex: 0 0 auto;
    padding: 1em 0;
  }
}

body#alliance .case-item__list-item dd {
  padding: 0 0 1em 1em;
}

@media (min-width: 768px) {
  body#alliance .case-item__list-item dd {
    padding: 1em 0;
  }
}

body#alliance .case__bnrs {
  margin-top: 40px;
}

@media (min-width: 768px) {
  body#alliance .case__bnrs {
    display: flex;
    justify-content: center;
    margin-top: 2.5em;
  }
}

body#alliance .case__bnr {
  display: flex;
  flex-direction: column;
  align-items: center;
}

body#alliance .case__bnr img {
  width: 15.63em;
}

body#alliance .case__bnr p {
  color: #000;
  margin-top: 1em;
  text-align: center;
}

@media (max-width: 767px) {
  body#alliance .case__bnr + .case__bnr {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  body#alliance .case__bnr + .case__bnr {
    margin-left: 1.5em;
  }
}

@media all and (-ms-high-contrast: none) {
  body#alliance .case__bnr > * {
    min-height: 0%;
    max-width: 100%;
  }
}

#strength .fs27 {
  font-size: 17px;
}

@media (min-width: 768px) {
  #strength .fs27 {
    font-size: 1.71em;
  }
}

#strength .fs36 {
  font-size: 20px;
}

@media (min-width: 768px) {
  #strength .fs36 {
    font-size: 2.25em;
  }
}

#strength .fs47 {
  font-size: 22px;
}

@media (min-width: 768px) {
  #strength .fs47 {
    font-size: 2.95em;
  }
}

#strength .fs63 {
  font-size: 26px;
}

@media (min-width: 768px) {
  #strength .fs63 {
    font-size: 3.91em;
  }
}

#strength .fs119 {
  font-size: 60px;
  line-height: 1;
  display: inline-block;
  transform: translateY(20%);
}

@media (min-width: 768px) {
  #strength .fs119 {
    font-size: 7.44em;
  }
}

@media (max-width: 767px) {
  #strength .page__lead {
    background-position: left -300px center;
  }
}

.strength__sec {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 60px 0;
}

@media (min-width: 768px) {
  .strength__sec {
    padding: 6.25em 0;
  }
}

.strength__sec--gray {
  background-color: #fafafa;
}

.strength__sec h1 {
  color: #005bac;
  line-height: 1.5;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (max-width: 767px) {
  .strength__sec h1 + p {
    margin-top: 1em;
  }
}

.strength__sec h2 {
  line-height: 1.46;
  font-size: 16px;
}

@media (min-width: 768px) {
  .strength__sec h2 {
    font-size: 1.5em;
  }
}

.strength__sec h2 + p {
  margin-top: 1em;
}

@media (min-width: 768px) {
  .strength__contents {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

@media all and (-ms-high-contrast: none) {
  .strength__contents {
    min-height: 0%;
  }
}

@media (max-width: 767px) {
  .strength__pic {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  .strength__pic {
    width: 46.21%;
  }
}

@media (min-width: 768px) {
  .strength__details {
    align-self: center;
    width: 46.21%;
  }
  .strength-trust .strength__details,
  .strength-results .strength__details,
  .strength-center .strength__details {
    padding-bottom: 1.63em;
  }
  .strength-potential .strength__details {
    padding-bottom: 2.5em;
  }
}

@media (min-width: 768px) {
  .strength-trust .strength__details {
    order: 1;
  }
}

@media (max-width: 767px) {
  .strength-trust .strength__details h2 {
    margin-top: 0.5em;
  }
}

.strength-trust__trend {
  order: 1;
  margin-top: 30px;
  text-align: center;
  width: 100%;
}

@media (min-width: 768px) {
  .strength-trust__trend {
    margin-top: 3.13em;
  }
}

@media all and (-ms-high-contrast: none) {
  .strength-trust__trend {
    min-height: 0%;
  }
}

.strength-trust__trend h3 {
  font-size: 16px;
}

@media (min-width: 768px) {
  .strength-trust__trend h3 {
    font-size: 1.07em;
  }
}

.strength-trust__graph {
  width: 100%;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .strength-trust__graph {
    margin-top: 1.25em;
  }
}

@media all and (-ms-high-contrast: none) {
  .strength-trust__graph {
    min-height: 0%;
  }
}

.strength-global__staffs {
  background-color: #e0e0e0;
  height: 200px;
  width: 100%;
  margin-top: 30px;
}

@media (min-width: 768px) {
  .strength-global__staffs {
    margin-top: 3.13em;
  }
}

@media (min-width: 768px) {
  .strength-results .strength__contents > *:not(.strength__pic),
  .strength-potential .strength__contents > *:not(.strength__pic) {
    order: 1;
  }
}

.strength-results__item {
  display: flex;
  flex-wrap: wrap;
  margin-top: 30px;
}

@media (min-width: 768px) {
  .strength-results__item {
    margin-top: 2.94em;
    width: 46.21%;
  }
  .strength-results__item--center {
    margin-left: auto;
    margin-right: auto;
  }
}

.strength-results__item:nth-child(3) img {
  width: 53.33%;
}

.strength-results__item:nth-child(4) img {
  width: 61.11%;
}

.strength-results__item p {
  margin-top: 0.75em !important;
}

.strength-results__icon {
  background-color: #fafafa;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  width: 80px;
}

@media (min-width: 768px) {
  .strength-results__icon {
    height: 5.63em;
    width: 5.63em;
  }
}

.strength-results__icon + h2 {
  margin-left: 1em;
  align-self: center;
}

@media (max-width: 767px) {
  .strength-results__icon + h2 {
    width: calc(100% - 96px);
  }
}

.strength-results__prizes {
  border: 1px solid #005bac;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin-top: 40px;
  padding: 20px 15px;
}

@media (min-width: 768px) {
  .strength-results__prizes {
    margin-top: 3.25em;
    padding: 2em 0;
  }
}

.strength-results__prizes h2,
.strength-results__prizes h3 {
  font-weight: 500;
  width: 100%;
  font-size: 16px;
}

@media (min-width: 768px) {
  .strength-results__prizes h2,
  .strength-results__prizes h3 {
    font-size: 1.39em;
  }
}

.strength-results__prizes h2 {
  text-align: center;
}

.strength-results__prizes p {
  margin-top: 1.5em;
}

@media (min-width: 768px) {
  .strength-results__prizes p {
    margin-top: 1em;
  }
}

.strength-results__prize {
  display: flex;
  align-items: center;
  margin-top: 1.5em;
}

@media (min-width: 768px) {
  .strength-results__prize {
    margin-top: 2em;
  }
}

.strength-results__prize img {
  width: 3.69em;
}

@media (min-width: 768px) {
  .strength-results__prize + .strength-results__prize {
    margin-left: 20px;
  }
}

@media (min-width: 901px) {
  .strength-results__prize + .strength-results__prize {
    margin-left: 4.38em;
  }
}

.strength-center .strength__details p {
  margin-top: 1em;
}

.strength--center__items {
  display: flex;
  margin-top: 40px;
}

@media (max-width: 767px) {
  .strength--center__items {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .strength--center__items {
    width: 100%;
    margin-top: 3.38em;
    justify-content: space-between;
  }
}

@media (min-width: 901px) {
  .strength--center__items {
    justify-content: center;
  }
}

.strength--center__item:nth-child(1) img {
  width: 40.51%;
}

.strength--center__item:nth-child(2) img {
  width: 41.54%;
}

.strength--center__item:nth-child(3) img {
  width: 48.72%;
}

.strength--center__item img {
  transform: translate(-50%, -65%) !important;
}

.strength--center__item h2 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 15%;
  text-align: center;
}

.strength--center__item p {
  margin-top: 1em;
  text-align: center;
}

.strength-potential h2 {
  margin-top: 0.5em;
}

.strength-potential__apps {
  width: 100%;
  margin-top: 40px;
}

@media (min-width: 768px) {
  .strength-potential__apps {
    display: flex;
    justify-content: space-between;
    margin-top: 3.75em;
  }
}

@media (min-width: 768px) {
  .strength-potential__app-type {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}

@media (max-width: 767px) {
  .strength-potential__app-type:not(:first-child) {
    margin-top: 35px;
  }
}

@media (min-width: 768px) {
  .strength-potential__app-type:not(:first-child) {
    margin-left: 2.73%;
  }
}

.strength-potential__app-type h3 {
  background: linear-gradient(to right, #437fec, #4cd9ed);
  color: #fff;
  width: 100%;
  height: 26px;
  line-height: 26px;
  text-align: center;
  border-radius: 13px;
  margin-bottom: 1em;
}

@media (min-width: 768px) {
  .strength-potential__app-type h3 {
    border-radius: 0.93em;
    height: 1.86em;
    line-height: 1.86em;
  }
}

.strength-potential__item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 768px) {
  .strength-potential__item {
    height: 8.75em;
    justify-content: space-between;
  }
}

.strength-potential__item p {
  font-weight: 500;
  text-align: center;
}

.strength-potential__item p:last-child {
  margin-top: 10px;
}

.strength-potential__item a {
  color: #000;
}

@media (max-width: 767px) {
  .strength-potential__item img {
    margin-top: 10px;
  }
}

@media (max-width: 767px) {
  .strength-potential__item:not(:first-of-type) {
    margin-top: 2em;
  }
}

@media (min-width: 768px) {
  .strength-potential__item:not(:first-of-type) {
    margin-left: 20px;
  }
}

@media (min-width: 901px) {
  .strength-potential__item:not(:first-of-type) {
    margin-left: 2em;
  }
}

img.strength-potential__pinnar {
  width: 8.88em;
}

img.strength-potential__lockar {
  width: 7.38em;
}

img.strength-potential__nh {
  width: 8.63em;
}

img.strength-potential__biki {
  width: 5.44em;
}

@media (max-width: 767px) {
  #journal .c-sec:not(.contact-area) {
    padding-bottom: 0;
  }
}

@media (min-width: 768px) {
  #journal .c-sec:not(.contact-area) {
    padding-top: 6.25em;
  }
}

@media all and (-ms-high-contrast: none) {
  #journal .topics__contents {
    min-height: 0%;
  }
}

.tag-cloud {
  border: 1px solid #005bac;
  margin: 60px auto 0;
  width: 92vw;
  padding: 30px 15px;
}

@media (min-width: 768px) {
  .tag-cloud {
    margin-top: 4.38em;
    padding: 1.88em calc(2em - 0.93em);
    width: 90vw;
  }
}

@media (min-width: 901px) {
  .tag-cloud {
    padding: 2.5em calc(2em - 0.88em);
    width: 75%;
  }
}

@media (min-width: 1280px) {
  .tag-cloud {
    width: 60em;
  }
}

.tag-cloud__container {
  overflow: hidden;
  transition: height 0.3s ease;
}

@media (max-width: 767px) {
  .tag-cloud__container {
    height: 80px;
  }
}

@media (min-width: 768px) {
  .tag-cloud__container {
    height: 2.5em;
  }
}

@media (min-width: 901px) {
  .tag-cloud__container {
    height: 2.5em;
  }
}

.tag-cloud__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.tag-cloud__inner a {
  border: 1px solid #000;
  color: #000;
  border-radius: 1em;
  line-height: 2;
  height: calc(2em + 1px);
  min-width: 7em;
  padding: 0 2em;
  text-align: center;
  margin: 0 1em 1em;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .tag-cloud__inner a {
    transition: border-color 0.4s ease, background-color 0.4s ease;
  }
  .tag-cloud__inner a:hover {
    background-color: #005bac;
    border-color: #005bac;
    color: #fff;
  }
}

.tag-cloud__more {
  margin: 20px auto 0;
}

@media (min-width: 768px) {
  .tag-cloud__more {
    margin-top: 1em;
  }
}

.pickup--mt0 {
  padding-top: 0 !important;
}

#news .local-nav {
  margin-top: 20px !important;
}

@media (min-width: 768px) {
  #news .local-nav {
    margin-top: 2em !important;
  }
}

.news__contents {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .news__contents {
    padding-top: 4.38em;
  }
}

.news__list li {
  display: flex;
  align-items: baseline;
  padding: 1em 0;
}

@media (max-width: 767px) {
  .news__list li {
    flex-wrap: wrap;
  }
}

.news__date,
.news__cat {
  flex: 0 0 auto;
  width: 7em;
}

.news__cat {
  border: 1px solid #005bac;
  text-align: center;
  width: 8em;
}

.news__ttl {
  color: #000;
}

@media (max-width: 767px) {
  .news__ttl {
    margin-top: 0.75em;
  }
}

@media (min-width: 768px) {
  .news__ttl {
    margin-left: 1.5em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .news__ttl:hover {
    text-decoration: underline;
  }
}

@media (max-width: 767px) {
  #recruit .page__lead {
    background-position: right -250px center;
  }
}

@media (max-width: 767px) {
  #recruit .movie__contents.topics__contents {
    width: auto;
  }
}

@media (min-width: 768px) {
  .recruit-search {
    padding: 6.25em 0;
  }
}

.recruit-search__container {
  display: flex;
  justify-content: center;
}

@media (max-width: 767px) {
  .recruit-search__container {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .recruit-search__container {
    margin-top: 1em;
  }
}

.recruit-search__item {
  background-color: #fafafa;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  margin: 0 auto;
}

@media (max-width: 767px) {
  .recruit-search__item {
    width: 80vw;
    max-width: 300px;
    padding: 30px 0;
  }
}

@media (min-width: 768px) {
  .recruit-search__item {
    padding-bottom: 2.63em;
    width: 22.59%;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .recruit-search__item {
    padding-top: 1.88em;
  }
}

@media (min-width: 901px) {
  .recruit-search__item {
    height: 16.13em;
  }
}

.recruit-search__item:nth-child(1) img {
  width: 28.62%;
}

.recruit-search__item:nth-child(2) img {
  width: 32.07%;
}

.recruit-search__item:nth-child(3) img {
  width: 30.34%;
}

.recruit-search__item:nth-child(4) img {
  width: 33.45%;
}

@media (max-width: 767px) {
  .recruit-search__item:not(:first-child) {
    margin-top: 30px;
  }
}

.recruit-search__item .c-btn,
.recruit-search__item .footer__pagetop {
  margin-top: 1.56em;
}

.recruit-search__ttl {
  margin-top: 1.25em;
}

.recruit-search__btn {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .recruit-search__btn {
    margin-top: 2.63em;
  }
}

.recruit-about {
  background-color: #fafafa;
}

@media (min-width: 768px) {
  .recruit-about {
    padding: 6.25em 0;
  }
}

.recruit-about__msg {
  display: flex;
}

@media (max-width: 767px) {
  .recruit-about__msg {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .recruit-about__msg {
    justify-content: space-between;
    margin-top: 1em;
  }
}

@media (min-width: 768px) {
  .recruit-about__details {
    width: 50%;
  }
}

@media (min-width: 901px) {
  .recruit-about__details {
    width: 46.08%;
  }
}

.recruit-about__details h2 {
  font-size: 20px;
}

@media (min-width: 768px) {
  .recruit-about__details h2 {
    font-size: 1.93em;
  }
}

.recruit-about__president {
  margin-top: 1.5em;
}

@media (min-width: 768px) {
  .recruit-about__president {
    margin-top: 2em;
  }
}

.recruit-about__txt {
  margin-top: 1.5em;
}

@media (min-width: 768px) {
  .recruit-about__txt {
    margin-top: 2em;
  }
}

@media (max-width: 767px) {
  .recruit-about__pic {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  .recruit-about__pic {
    width: 49.91%;
  }
}

.recruit-about__contents {
  margin-top: 30px;
}

@media (min-width: 768px) {
  .recruit-about__contents {
    margin-top: 5.5em;
  }
}

.recruit-about__contents .col__item--3:nth-child(1) img {
  width: 54.36%;
}

.recruit-about__contents .col__item--3:nth-child(2) img {
  width: 40%;
}

.recruit-about__contents .col__item--3:nth-child(3) img {
  width: 42.56%;
}

.recruit-service {
  width: 100%;
  margin-top: 40px;
}

@media (max-width: 767px) {
  .recruit-service {
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media (min-width: 768px) {
  .recruit-service {
    margin-top: 5.5em;
  }
}

@media (min-width: 901px) {
  .recruit-service__details {
    padding: 4em 7.75em;
    width: 72.68%;
  }
}

.recruit-service__details p {
  max-width: 100%;
}

@media (min-width: 901px) {
  .recruit-service__details p {
    margin-top: 2em;
  }
}

.recruit-interview,
.recruit-movie {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .recruit-interview,
  .recruit-movie {
    padding-top: 6.25em;
  }
}

@media (min-width: 768px) {
  .recruit-interview__contents,
  .recruit-movie__contents {
    margin-top: 1em;
  }
}

@media (min-width: 768px) {
  .recruit-interview__contents a:last-child img {
    height: 100%;
    width: auto;
  }
}

.recruit-movie .recruit-movie__btn {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .recruit-movie .recruit-movie__btn {
    margin-top: 3.5em;
  }
}

.recruit-movie__contents {
  display: flex;
}

@media (max-width: 767px) {
  .recruit-movie__contents {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .recruit-movie__contents {
    display: flex;
    justify-content: space-between;
  }
}

@media (max-width: 767px) {
  .recruit-movie__contents .c-cols__item {
    max-width: 330px;
  }
  .recruit-movie__contents .c-cols__item:not(:first-child) {
    margin-top: 20px;
  }
}

.recruit-movie__time {
  color: #666;
  font-size: 11px;
  margin-top: 1.82em;
}

@media (min-width: 768px) {
  .recruit-movie__time {
    font-size: 0.7em;
  }
}

.recruit-entries {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .recruit-entries {
    padding-top: 6.25em;
  }
}

.recruit-page__links {
  display: flex;
  padding: 20px 0;
}

@media (max-width: 767px) {
  .recruit-page__links {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .recruit-page__links {
    justify-content: center;
    padding: 2.5em 0;
  }
}

.recruit-page__link {
  color: #005bac;
  font-weight: 500;
  display: flex;
}

@media (max-width: 767px) {
  .recruit-page__link {
    align-items: center;
    padding: 10px;
  }
}

@media (min-width: 768px) {
  .recruit-page__link {
    align-items: baseline;
  }
}

.recruit-page__link span {
  white-space: nowrap;
}

.recruit-page__link svg {
  margin-left: 1em;
}

@media (max-width: 767px) {
  .recruit-page__link svg {
    width: 15px;
    height: 9px;
  }
}

@media (min-width: 768px) {
  .recruit-page__link svg {
    width: 0.94em;
    height: 0.56em;
  }
}

@media (min-width: 768px) {
  .recruit-page__link + .recruit-page__link {
    margin-left: 3.57em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .recruit-page__link:hover {
    text-decoration: underline;
  }
}

@media (min-width: 768px) {
  .recruit-movie .movie__contents {
    justify-content: center !important;
  }
}

@media (min-width: 768px) {
  .recruit-movie__item {
    width: 40% !important;
  }
  .recruit-movie__item:nth-child(even) {
    margin-left: 2.5%;
  }
  .recruit-movie__item:nth-child(2) ~ .recruit-movie__item {
    margin-top: 2.5%;
  }
}

@media (max-width: 767px) {
  #search .page__lead {
    position: relative;
    background-position: left -300px center;
  }
  #search .page__lead::before {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.2);
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  #search .page__lead > * {
    position: relative;
  }
}

.search-page__container {
  padding-top: 30px;
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .search-page__container {
    padding-top: 3.75em;
  }
}

.search-page__head {
  display: flex;
}

.search-page__icon {
  background-color: #fff;
  width: 4.63em;
  height: 4.63em;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.search-page__sec {
  background-color: #fafafa;
  padding-bottom: 60px;
}

@media (min-width: 768px) {
  .search-page__sec {
    margin-top: 2em;
    padding-bottom: 6.25em;
  }
}

@media all and (-ms-high-contrast: none) {
  .search-page__sec {
    min-height: 0%;
  }
}

.search-page__sec:nth-of-type(1) .search-page__icon img {
  width: 62.79%;
}

.search-page__sec:nth-of-type(2) .search-page__icon img {
  width: 61.63%;
}

.search-page__sec:nth-of-type(3) .search-page__icon img {
  width: 56.98%;
}

.search-page__sec:nth-of-type(4) .search-page__icon img {
  width: 61.63%;
}

.search-page__sec + .search-page__sec {
  margin-top: 60px;
}

@media (min-width: 768px) {
  .search-page__sec + .search-page__sec {
    margin-top: 6.25em;
  }
}

.search-page__sec .c-square__ttl {
  margin-top: 1em;
}

@media (min-width: 768px) {
  .search-page__sec .c-square__ttl {
    margin-top: 1.85em;
  }
}

.search-page__sec-heading {
  align-self: center;
  color: #005bac;
  font-size: 17px;
  margin-left: 0.81em;
}

@media (min-width: 768px) {
  .search-page__sec-heading {
    font-size: 1.29em;
  }
}

.search-interview {
  background-color: #fff;
  display: flex;
}

@media (max-width: 767px) {
  .search-interview {
    padding: 1em;
    margin: 0 4vw 40px;
  }
}

@media (min-width: 768px) {
  .search-interview {
    align-items: center;
    margin: 4.38em 1.88em 0;
  }
}

@media (min-width: 901px) {
  .search-interview {
    margin-left: 4em;
    margin-right: 4em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .search-interview:hover .search-interview__heading {
    text-decoration: underline;
  }
}

.search-interview__pic {
  background-color: #bfbfbf;
  flex: 0 0 auto;
  height: 100px;
  width: 100px;
}

@media (min-width: 768px) {
  .search-interview__pic {
    height: 13.63em;
    width: 13.63em;
  }
}

.search-interview__pic img.ofi {
  object-position: right;
  font-family: "object-fit: cover;object-position: right;";
}

.search-interview__details {
  color: #000;
  flex: 1 1 auto;
  padding-left: 1em;
}

@media (min-width: 768px) {
  .search-interview__details {
    padding-left: 1.75em;
  }
}

.search-interview__ttl {
  color: #005bac;
  font-weight: bold;
  font-size: 15px;
}

@media (min-width: 768px) {
  .search-interview__ttl {
    font-size: 0.96em;
  }
}

.search-interview__heading {
  font-weight: bold;
  font-size: 16px;
}

@media (min-width: 768px) {
  .search-interview__heading {
    margin-top: 0.38em;
    font-size: 1.5em;
  }
}

.search-interview__name {
  margin-top: 0.91em;
  font-size: 13px;
}

@media (min-width: 768px) {
  .search-interview__name {
    font-size: 0.96em;
  }
}

.search-page__btn {
  margin: 0 auto;
}

@media (max-width: 767px) {
  .search-page__btn {
    width: 84vw;
  }
}

@media (min-width: 768px) {
  .search-page__btn {
    margin-top: 4.38em;
  }
}

@media all and (-ms-high-contrast: none) {
  .search-page__btn svg {
    min-height: 0%;
  }
}

@media (max-width: 767px) {
  #aboutus .page__lead {
    background-position: right -200px center;
  }
}

@media (min-width: 768px) {
  #aboutus h1 + .c-square__wrap {
    margin-top: 1.25em;
  }
}

.aboutus__sec:not(.welfare) {
  padding-bottom: 0;
}

.aboutus__sec#culture {
  padding-top: 30px;
}

@media (min-width: 768px) {
  .aboutus__sec {
    padding-top: 6.25em;
  }
  .aboutus__sec#culture {
    padding-top: 3.75em;
  }
}

.aboutus__other {
  background-color: #fafafa;
  padding: 20px;
  margin-top: 39px;
}

@media (min-width: 768px) {
  .aboutus__other {
    padding: 1.88em;
    margin-top: 4.38em;
  }
}

@media (min-width: 901px) {
  .aboutus__other {
    padding-left: 4em;
    padding-right: 4em;
  }
}

.welfare {
  background-color: #fafafa;
  margin-top: 60px;
}

@media (min-width: 768px) {
  .welfare {
    margin-top: 3.75em;
    padding-bottom: 6.25em;
  }
}

.welfare__item:nth-child(1) img {
  width: 60.53%;
}

.welfare__item:nth-child(2) img {
  width: 33.77%;
}

.welfare__item:nth-child(3) img {
  width: 33.77%;
}

.aboutus__btn {
  width: 100%;
  margin-top: 30px;
}

@media (min-width: 768px) {
  .aboutus__btn {
    margin-top: 2.5em;
  }
}

.aboutus-solution__links {
  margin-top: 60px;
}

@media (min-width: 768px) {
  .aboutus-solution__links {
    margin-top: 4.38em;
    width: 90vw;
  }
}

@media (min-width: 901px) {
  .aboutus-solution__links {
    width: 87.65vw;
  }
}

@media (min-width: 901px) and (max-width: 1679px) {
  .aboutus-solution__links {
    max-width: 1122px;
  }
}

@media (min-width: 1680px) {
  .aboutus-solution__links {
    width: 1310px;
  }
}

@media (max-width: 767px) {
  #interview .interview__contents.topics__contents,
  #careers .interview__contents.topics__contents,
  #graduates .interview__contents.topics__contents,
  #staff .interview__contents.topics__contents {
    width: auto;
  }
}

.interview-item__heading {
  margin-top: 1em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

@media (min-width: 768px) {
  .interview-item__heading {
    height: 2.88em;
  }
}

.interview-item__name {
  margin-top: 1em;
}

.interview-item__status {
  color: #666;
  font-size: 12px;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (min-width: 768px) {
  .interview-item__status {
    font-size: 0.75em;
  }
}

.interview-careers,
.careers,
.graduates {
  padding-top: 30px;
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .interview-careers,
  .careers,
  .graduates {
    padding-top: 3.75em;
  }
}

#staff .interview-careers,
#staff .careers,
#staff .graduates {
  padding-top: 60px;
}

@media (min-width: 768px) {
  #staff .interview-careers,
  #staff .careers,
  #staff .graduates {
    padding-top: 6.25em;
  }
}

.interview-graduates {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .interview-graduates {
    padding-top: 6.25em;
  }
}

@media (min-width: 768px) {
  #careers .interview__contents,
  #graduates .interview__contents {
    flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  #careers .c-cols__item:nth-child(3) ~ .c-cols__item,
  #graduates .c-cols__item:nth-child(3) ~ .c-cols__item {
    margin-top: 2em;
  }
}

.movie-pickup {
  padding-top: 30px;
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .movie-pickup {
    padding-top: 3.75em;
  }
}

.movie-pickup__contents {
  display: flex;
}

@media (max-width: 767px) {
  .movie-pickup__contents {
    flex-direction: column;
    margin: 20px auto 0;
    width: 92vw;
  }
}

@media (min-width: 768px) {
  .movie-pickup__contents {
    margin-top: 1.25em;
    justify-content: center;
    width: 90vw;
    max-width: 960px;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 11678px) {
  .movie-pickup__contents {
    width: 960px;
  }
}

.movie-pickup__movie {
  position: relative;
}

@media (max-width: 767px) {
  .movie-pickup__movie {
    width: 100%;
    height: 51.75vw;
  }
}

@media (min-width: 768px) {
  .movie-pickup__movie {
    flex: 0 0 auto;
  }
}

@media (min-width: 768px) and (max-width: 1066px) {
  .movie-pickup__movie {
    width: 58.33%;
    padding-top: 32.81%;
  }
}

@media (min-width: 768px) and (min-width: 1067px) {
  .movie-pickup__movie {
    width: 560px;
  }
}

@media (max-width: 1066px) {
  .movie-pickup__movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
  }
}

.movie-pickup__details {
  background-color: #fafafa;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (max-width: 767px) {
  .movie-pickup__details {
    padding: 20px;
  }
}

@media (min-width: 768px) {
  .movie-pickup__details {
    padding-left: 1.88em;
    padding-right: 1.88em;
    flex: 1 1 auto;
  }
}

@media all and (-ms-high-contrast: none) {
  .movie-pickup__details {
    width: 41.67%;
  }
  .movie-pickup__details > * {
    min-height: 0%;
    min-width: 100%;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 1067px) {
  .movie-pickup__details {
    width: 400px;
  }
}

.movie-pickup__date {
  margin-top: 1.5em;
}

.movie-pickup__time {
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
  color: #666;
}

@media (max-width: 767px) {
  #movie .movie__contents.topics__contents {
    width: auto;
  }
}

@media (min-width: 768px) {
  #movie .c-cols__item:nth-child(3) ~ .c-cols__item {
    margin-top: 2em;
  }
}

.movie__sec {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .movie__sec {
    padding-top: 6.25em;
  }
}

@media (min-width: 768px) {
  .movie__contents {
    flex-wrap: wrap;
  }
  .movie__contents::after {
    content: "";
  }
}

.movie-more__btn {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .movie-more__btn {
    margin-top: 4.38em;
  }
}

.movie__wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.movie__wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

#staff .page__lead {
  color: #fff;
}

@media (min-width: 768px) {
  #staff .page__lead {
    padding: 50px 0;
    justify-content: center;
  }
}

@media (max-width: 900px) {
  #staff .page__lead {
    height: auto;
  }
}

@media (min-width: 901px) {
  #staff .page__lead {
    padding: 0;
  }
}

@media (min-width: 1280px) {
  #staff .page__lead {
    padding: 0 calc(50% - 549px);
  }
}

@media (min-width: 1680px) {
  #staff .page__lead {
    padding: 0 calc(50% - 640px);
  }
}

#staff .sec__heading--1 {
  text-align: left;
}

#staff .staff__name {
  font-size: 18px;
  margin-top: 0.75em;
}

@media (min-width: 768px) {
  #staff .staff__name {
    font-size: 1.25em;
  }
}

#staff .staff__status {
  font-size: 0.94em;
}

#staff .article__body h3 {
  margin-top: 1.25em;
}

#staff .flex2col img.ofi {
  width: 100% !important;
}

#staff .flex2col dl {
  display: flex;
  flex-wrap: wrap;
}

#staff .flex2col dl dt {
  width: 4em;
}

#staff .flex2col dl dd {
  width: calc(100% - 4em);
}

#staff .c-sec__heading {
  font-size: 17px;
  font-weight: 600;
}

@media (min-width: 768px) {
  #staff .c-sec__heading {
    margin-top: 2.91em !important;
    font-size: 1.38em;
  }
}

#staff .c-sec__heading + .flex2col {
  margin-top: 20px;
}

@media (min-width: 768px) {
  #staff .c-sec__heading + .flex2col {
    margin-top: 1.25em;
  }
}

.page__lead--staff {
  position: relative;
}

.page__lead-bg--staff {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media (max-width: 767px) {
  .page__lead-bg--staff img.ofi {
    object-position: right;
  }
}

.page__lead-box--staff {
  position: relative;
  width: auto !important;
}

@media (max-width: 767px) {
  .page__lead-box--staff {
    margin-bottom: -160px;
  }
}

@media (min-width: 768px) {
  .page__lead-box--staff {
    padding-left: 3.13em;
    padding-right: 3.13em;
  }
}

@media (max-width: 767px) {
  #staff .article__body {
    padding-top: 160px;
  }
}

.article__head {
  background-color: #fafafa;
  padding: 20px 0;
}

@media (min-width: 768px) {
  .article__head {
    padding: 2.5em 0;
  }
}

.article__head-inner,
.article__body {
  margin: 0 auto;
  width: 92vw;
}

@media (min-width: 768px) {
  .article__head-inner,
  .article__body {
    width: 81.25%;
  }
}

@media (min-width: 1280px) {
  .article__head-inner,
  .article__body {
    width: 65em;
  }
}

.article__head-inner {
  display: flex;
  flex-wrap: wrap;
}

.article__head-inner time {
  line-height: 2;
  color: #666;
  width: 7em;
}

.article__terms {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .article__terms {
    width: 100%;
    margin-top: 0.5em;
  }
}

@media (min-width: 768px) {
  .article__terms {
    width: calc(100% - 7em);
  }
}

.article__terms span {
  line-height: 2;
  height: 2em;
  padding: 0 1em;
  margin-right: 1.5em;
}

.article__terms .article__cat {
  background-color: #005bac;
  color: #fff;
  font-weight: 500;
}

.article__terms .article__tag {
  border: 1px solid #000;
  border-radius: 1em;
}

.article__ttl {
  font-size: 22px;
  line-height: 1.5;
  margin-top: 0.35em;
  width: 100%;
}

@media (min-width: 768px) {
  .article__ttl {
    font-size: 2.17em;
  }
}

.article__body,
.text-page__body {
  padding-top: 60px;
}

@media (min-width: 768px) {
  .article__body,
  .text-page__body {
    padding-top: 5em;
  }
}

.article__body h3,
.text-page__body h3 {
  font-size: 16px;
}

@media (min-width: 768px) {
  .article__body h3,
  .text-page__body h3 {
    font-size: 1.19em;
  }
}

.article__body h3:not(:first-child),
.text-page__body h3:not(:first-child) {
  margin-top: 2em;
}

.article__body p:not(:first-child),
.text-page__body p:not(:first-child) {
  margin-top: 1.5em;
}

.article__body p.right,
.text-page__body p.right {
  text-align: right;
}

.article__body .left,
.text-page__body .left {
  text-align: left;
}

.article__body .right,
.text-page__body .right {
  text-align: right;
}

.article__body .center,
.text-page__body .center {
  text-align: center;
}

.article__body .big,
.text-page__body .big {
  font-size: 1.125em;
}

.article__body div:not(:first-child),
.article__body > figure:not(:first-child),
.text-page__body div:not(:first-child),
.text-page__body > figure:not(:first-child) {
  margin-top: 2em;
}

@media (min-width: 768px) {
  .article__body div:not(:first-child),
  .article__body > figure:not(:first-child),
  .text-page__body div:not(:first-child),
  .text-page__body > figure:not(:first-child) {
    margin-top: 4em;
  }
}

.article__body div + p,
.article__body > figure + p,
.text-page__body div + p,
.text-page__body > figure + p {
  margin-top: 2.15em;
}

@media (min-width: 768px) {
  .article__body div + p,
  .article__body > figure + p,
  .text-page__body div + p,
  .text-page__body > figure + p {
    margin-top: 4.57em !important;
  }
}

.article__body div + ul,
.article__body > figure + ul,
.text-page__body div + ul,
.text-page__body > figure + ul {
  margin-top: 2.15em;
}

@media (min-width: 768px) {
  .article__body div + ul,
  .article__body > figure + ul,
  .text-page__body div + ul,
  .text-page__body > figure + ul {
    margin-top: 4.57em !important;
  }
}

.article__body div + h2,
.article__body > figure + h2,
.text-page__body div + h2,
.text-page__body > figure + h2 {
  margin-top: 1.56em;
}

@media (min-width: 768px) {
  .article__body div + h2,
  .article__body > figure + h2,
  .text-page__body div + h2,
  .text-page__body > figure + h2 {
    margin-top: 2.31em !important;
  }
}

.article__body div + h3,
.article__body > figure + h3,
.text-page__body div + h3,
.text-page__body > figure + h3 {
  margin-top: 1.75em;
}

@media (min-width: 768px) {
  .article__body div + h3,
  .article__body > figure + h3,
  .text-page__body div + h3,
  .text-page__body > figure + h3 {
    margin-top: 3.35em !important;
  }
}

.article__body img,
.text-page__body img {
  width: auto;
  max-width: 100%;
}

.article__body ul,
.text-page__body ul {
  margin-left: 0.25em;
}

.article__body ul:not(:first-child),
.text-page__body ul:not(:first-child) {
  margin-top: 1.5em;
}

.article__body ul li,
.text-page__body ul li {
  display: flex;
  align-items: baseline;
}

.article__body ul li::before,
.text-page__body ul li::before {
  background-color: #005bac;
  content: "";
  height: 0.57em;
  width: 0.57em;
  border-radius: 50%;
  margin-right: 0.25em;
  transform: translateY(-2px);
  flex: 0 0 auto;
}

@media (min-width: 1280px) {
  .article__body ul li::before,
  .text-page__body ul li::before {
    height: 8px;
    width: 8px;
  }
}

@media (min-width: 1680px) {
  .article__body ul li::before,
  .text-page__body ul li::before {
    height: 10px;
    width: 10px;
  }
}

.article__body ol,
.text-page__body ol {
  margin-left: 1.25em;
}

.article__body ol:not(:first-child),
.text-page__body ol:not(:first-child) {
  margin-top: 1.5em;
}

.article__body .center,
.text-page__body .center {
  text-align: center;
}

@media (max-width: 767px) {
  .article__body .flex2col > *:not(:first-child),
  .text-page__body .flex2col > *:not(:first-child) {
    margin-top: 2em;
  }
}

@media (min-width: 768px) {
  .article__body .flex2col,
  .text-page__body .flex2col {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .article__body .flex2col > *,
  .text-page__body .flex2col > * {
    width: 48%;
  }
}

@media (min-width: 768px) {
  .article__body .flex2col--rev,
  .text-page__body .flex2col--rev {
    flex-direction: row-reverse;
  }
}

.article__body .color__red,
.text-page__body .color__red {
  color: #ca0000;
}

.article__body .color__blue,
.text-page__body .color__blue {
  color: #005bac;
}

.article__body .bg__color,
.text-page__body .bg__color {
  background-color: #005bac;
  color: #fff;
}

.article__body blockquote,
.text-page__body blockquote {
  border: 0.38em solid #fafafa;
  padding: 20px;
}

@media (max-width: 767px) {
  .article__body blockquote,
  .text-page__body blockquote {
    margin-left: 1em;
    margin-right: 1em;
  }
}

@media (min-width: 768px) {
  .article__body blockquote,
  .text-page__body blockquote {
    padding: 2em 3em;
  }
}

.article__body blockquote:not(:first-child),
.text-page__body blockquote:not(:first-child) {
  margin-top: 4em;
}

@media (max-width: 767px) {
  .article__body table,
  .article__body tbody,
  .article__body tr,
  .article__body th,
  .article__body td,
  .text-page__body table,
  .text-page__body tbody,
  .text-page__body tr,
  .text-page__body th,
  .text-page__body td {
    display: block;
  }
}

.article__body table,
.text-page__body table {
  margin-top: 4em;
  width: 100%;
}

@media (max-width: 767px) {
  .article__body thead,
  .text-page__body thead {
    display: none;
  }
}

.article__body th,
.text-page__body th {
  font-weight: 500;
}

.article__body thead th,
.text-page__body thead th {
  background-color: #005bac;
  color: #fff;
  text-align: center;
  padding: 0.25em 1.5em;
}

.article__body thead th:not(:first-child),
.text-page__body thead th:not(:first-child) {
  border-left: 1px solid #fff;
}

.article__body tbody th,
.article__body td,
.text-page__body tbody th,
.text-page__body td {
  padding: 1em 0.5em;
}

@media (min-width: 768px) {
  .article__body tbody th,
  .article__body td,
  .text-page__body tbody th,
  .text-page__body td {
    padding: 1em 1.5em;
  }
}

.article__body tbody th,
.text-page__body tbody th {
  background-color: #fafafa;
  text-align: center;
}

@media (max-width: 767px) {
  .article__body tbody th,
  .text-page__body tbody th {
    background-color: #005bac;
    color: #fff;
  }
}

@media (min-width: 768px) {
  .article__body tbody th,
  .text-page__body tbody th {
    border-bottom: 1px solid #bfbfbf;
    width: 15%;
  }
}

@media (max-width: 767px) {
  .article__body td[data-head],
  .text-page__body td[data-head] {
    display: flex;
    align-items: baseline;
  }
  .article__body td:not(:last-child),
  .text-page__body td:not(:last-child) {
    border-bottom: 1px solid #bfbfbf;
  }
}

@media (min-width: 768px) {
  .article__body td,
  .text-page__body td {
    border-bottom: 1px solid #bfbfbf;
    text-align: center;
  }
}

@media (max-width: 767px) {
  .article__body td[data-head]::before,
  .text-page__body td[data-head]::before {
    font-weight: 500;
    content: attr(data-head);
    flex: 0 0 auto;
    width: 6em;
    padding-right: 1em;
  }
}

.article__body a,
.text-page__body a {
  color: #005bac;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .article__body a:hover,
  .text-page__body a:hover {
    text-decoration: underline;
  }
}

.article__body h2 {
  color: #005bac;
  font-size: 18px;
}

@media (min-width: 768px) {
  .article__body h2 {
    font-size: 1.74em;
  }
}

.article__body h2:not(:first-child) {
  margin-top: 1.5em;
}

.article__body dl:not(.case-item__list):not(:first-child) {
  margin-top: 2em;
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list):not(:first-child) {
    margin-top: 4em;
  }
}

.article__body dl:not(.case-item__list) > div {
  border: 2px solid #fafafa;
  position: relative;
}

.article__body dl:not(.case-item__list) > div::before {
  position: absolute;
  background-color: #005bac;
  content: "";
  height: 1px;
  top: 29px;
  right: 15px;
  width: 16px;
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list) > div::before {
    top: calc(3.13em - 1px);
    height: 2px;
    right: 2.69em;
    width: 1.5em;
  }
}

.article__body dl:not(.case-item__list) > div:not(:first-child) {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list) > div:not(:first-child) {
    margin-top: 1.13em;
  }
}

.article__body dl:not(.case-item__list) > div dt {
  background-color: #fafafa;
  color: #005bac;
  display: flex;
  align-items: baseline;
  font-weight: 500;
  cursor: pointer;
}

@media (max-width: 767px) {
  .article__body dl:not(.case-item__list) > div dt {
    padding: 15px 2em 15px 15px;
  }
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list) > div dt {
    font-size: 1.07em;
    padding-left: 2em;
    align-items: center;
    height: 5.88em;
  }
}

.article__body dl:not(.case-item__list) > div dt::before {
  content: "Q\FF1A";
  font-size: 1.2em;
  margin-right: 0.5em;
}

.article__body dl:not(.case-item__list) > div dt::after {
  position: absolute;
  background-color: #005bac;
  content: "";
  transform: rotate(90deg);
  height: 1px;
  top: 29px;
  right: 15px;
  width: 16px;
  transition: transform 0.4s ease;
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list) > div dt::after {
    font-size: 14px;
    top: calc(3.13em - 1px);
    height: 2px;
    right: 2.69em;
    width: 1.5em;
  }
}

@media (min-width: 901px) {
  .article__body dl:not(.case-item__list) > div dt::after {
    font-size: 1.25vw;
  }
}

@media (min-width: 1280px) {
  .article__body dl:not(.case-item__list) > div dt::after {
    font-size: 16px;
  }
}

@media (min-width: 1680px) {
  .article__body dl:not(.case-item__list) > div dt::after {
    font-size: 18.7px;
  }
}

.article__body dl:not(.case-item__list) > div.open dt::after {
  transform: rotate(0);
}

.article__body dl:not(.case-item__list) > div dd {
  position: relative;
  font-size: 0.86em;
  padding: 0 15px;
  line-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: padding 0.3s ease, line-height 0.3s ease, opacity 0.3s ease;
}

@media (max-width: 767px) {
  .article__body dl:not(.case-item__list) > div dd {
    text-align: justify;
  }
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list) > div dd {
    padding: 0 5.63em;
  }
}

.article__body dl:not(.case-item__list) > div dd::before {
  content: "A\FF1A";
  font-size: 1.5em;
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list) > div dd::before {
    position: absolute;
    top: 0.63em;
    left: 1.82em;
  }
}

.article__body dl:not(.case-item__list) > div.open dd {
  line-height: 1.75;
  opacity: 1;
  padding: 20px 15px;
}

@media (min-width: 768px) {
  .article__body dl:not(.case-item__list) > div.open dd {
    padding: 1.25em 5.63em;
    line-height: 1.75;
  }
}

.article__body dl:not(.case-item__list) > div.open dd p:not(:first-child) {
  margin-top: 1.75em;
}

@media (min-width: 768px) {
  .relation {
    padding-top: 6.25em;
  }
}

.text-page__body {
  padding-top: 0;
  margin: 0 auto;
  width: 92vw;
}

.text-page__body * {
  font-feature-settings: "pkna";
}

@media (min-width: 768px) {
  .text-page__body {
    width: 90vw;
  }
}

@media (min-width: 901px) {
  .text-page__body {
    width: 75%;
  }
}

@media (min-width: 1280px) {
  .text-page__body {
    width: 60em;
  }
}

.text-page__body h2:not(.c-sec__heading) {
  font-size: 16px;
}

@media (min-width: 768px) {
  .text-page__body h2:not(.c-sec__heading) {
    font-size: 1.19em;
  }
}

.text-page__body h2:not(.c-sec__heading):not(:first-child) {
  margin-top: 2em;
}

.text-page__body h3 {
  color: #005bac;
}

.text-page__body dl:not(:first-child) {
  margin-top: 1.5em;
}

@media (min-width: 768px) {
  .text-page__body dl {
    display: flex;
    flex-wrap: wrap;
  }
}

.text-page__body dl .list__head {
  font-weight: 500;
}

@media (max-width: 767px) {
  .text-page__body dl .list__head {
    display: none;
  }
}

@media (max-width: 767px) {
  .text-page__body dt,
  .text-page__body dd.list__head {
    font-weight: 500;
  }
}

@media (min-width: 768px) {
  .text-page__body dt,
  .text-page__body dd {
    border-bottom: 1px solid #eee;
    padding: 1em 0;
  }
}

@media (max-width: 767px) {
  .text-page__body dt {
    margin-top: 1.5em;
  }
}

@media (max-width: 767px) {
  .text-page__body dd {
    padding-top: 0.5em;
    padding-left: 13px;
  }
}

.text-page__body ol > li:not(:first-child) {
  margin-top: 1.5em;
}

.text-page__body ol ul,
.text-page__body ol ol,
.text-page__body ol p {
  font-size: 1em !important;
}

.text-page__body div.box {
  border-left: 1px solid #005bac;
  padding: 1em;
  margin-top: 2em !important;
}

.text-page__body div.box + p {
  margin-top: 1.5em !important;
}

.privacypolicy {
  padding-bottom: 0;
}

.privacypolicy .c-sec__heading {
  text-align: center;
}

@media (min-width: 768px) {
  .privacypolicy__d-list dt,
  .legal__d-list dt {
    width: 15em;
  }
}

@media (min-width: 768px) {
  .privacypolicy__d-list dd,
  .legal__d-list dd {
    width: calc(100% - 15em);
  }
}

.privacypolicy__mark {
  display: flex;
  align-items: center;
  border: 1px solid #005bac;
  padding: 20px 15px;
}

.privacypolicy__mark img {
  width: 85px;
}

@media (max-width: 767px) {
  .privacypolicy__mark {
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .privacypolicy__mark {
    padding: 1.5em;
  }
}

.privacypolicy__mark img {
  flex: 0 0 auto;
  margin-right: 1em;
}

.privacypolicy__mark p {
  flex: 1 1 auto;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .privacypolicy__mark p {
    margin-top: 0 !important;
  }
}

.text-page {
  padding-top: 0;
  padding-bottom: 0;
}

.text-page p b {
  font-weight: 500;
  font-size: 1.14em;
}

.sitepolicy h2,
.socialpolicy h2,
.fusei h2 {
  color: #005bac;
}

.fusei h3 {
  color: #000;
  font-size: 15px;
}

@media (min-width: 768px) {
  .fusei h3 {
    font-size: 1.06em;
  }
}

.fusei h3:not(:first-child) {
  margin-top: 2em;
}

@media (max-width: 767px) {
  .appli__sec {
    padding: 60px 0 0 !important;
  }
}

@media (min-width: 768px) {
  .appli__sec {
    padding-top: 6.25em;
  }
}

.appli__sec > *:not(.c-sec__heading) {
  align-self: stretch;
}

.appli__sec b {
  font-weight: 500;
  flex: 0 0 auto;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

.appli__sec .liststyle__none li::before {
  display: none;
}

.appli__sec .margin__none li {
  margin-top: 0 !important;
}

.legal__d-list dt {
  font-weight: 500;
}

.legal__d-list dd p {
  font-size: 1em;
  line-height: inherit;
}

.legal__d-list dd p b {
  font-size: 1em;
}

.legal__d-list dd ul {
  font-size: 1em;
  line-height: inherit;
}

.select__wrap {
  position: relative;
  width: 14em;
  height: 3.5em;
}

#news .select__wrap {
  margin: 0 auto;
}

#contact .select__wrap {
  width: calc(100% - 2.75em);
}

@media (min-width: 768px) {
  #contact .select__wrap {
    width: 31.25em;
  }
}

.select__wrap::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #005bac transparent transparent transparent;
  right: 1.5em;
  border-width: 10px 8px 0 8px;
  pointer-events: none;
}

select {
  background-color: #eee;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  outline: none;
  font-size: 13px;
  width: 100%;
  height: 100%;
  padding-left: 1.5em;
}

@media (min-width: 768px) {
  select {
    font-size: 0.88em;
  }
}

select::-ms-expand {
  display: none;
}

input[type="text"],
textarea {
  border: 1px solid #eee;
  padding: 1em;
  width: 100%;
  transition: border-color 0.3s ease;
}

input[type="text"]:focus,
textarea:focus {
  border-color: #005bac;
}

textarea {
  height: 92vw;
}

@media (min-width: 768px) {
  textarea {
    height: 20em;
  }
}

.radio__wrap {
  display: flex;
}

.radio__wrap input[type="radio"] {
  display: none;
}

.radio__wrap input[type="radio"]:checked + span::after {
  opacity: 1;
}

.radio__wrap span {
  position: relative;
  padding-left: 2.75em;
  line-height: 2;
}

.radio__wrap span::before {
  content: "";
  background-color: #eee;
  border-radius: 50%;
  height: 2em;
  width: 2em;
  position: absolute;
  top: 0;
  left: 0;
}

.radio__wrap span::after {
  content: "";
  background-color: #005bac;
  border-radius: 50%;
  height: 1em;
  width: 1em;
  position: absolute;
  top: 0.5em;
  left: 0.5em;
  opacity: 0;
}

.contact__container {
  padding-top: 0;
}

@media (min-width: 768px) {
  .contact__container {
    padding-bottom: 6.25em;
  }
}

.contact__contents {
  width: 90vw;
}

@media (min-width: 768px) {
  .contact__contents {
    width: 78.67%;
  }
}

@media (min-width: 1280px) {
  .contact__contents {
    width: 1007px;
  }
}

@media (min-width: 1680px) {
  .contact__contents {
    width: 1175px;
  }
}

.contact__globalsign,
.contact__ssl {
  display: flex;
  align-items: center;
  margin-top: 30px;
}

@media (max-width: 767px) {
  .contact__globalsign,
  .contact__ssl {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .contact__globalsign,
  .contact__ssl {
    margin-top: 2.5em;
  }
}

@media (max-width: 767px) {
  .contact__globalsign p,
  .contact__ssl p {
    margin-top: 1em;
  }
}

@media (min-width: 768px) {
  .contact__globalsign p,
  .contact__ssl p {
    margin-left: 1.5em;
  }
}

.contact__globalsign a,
.contact__ssl a {
  width: 150px;
}

@media (min-width: 768px) {
  .contact__globalsign a,
  .contact__ssl a {
    width: 14.38em;
  }
}

.contact__ssl a {
  width: 115px;
}

.contact__form {
  margin-top: 60px;
}

@media (min-width: 768px) {
  .contact__form {
    margin-top: 5em;
  }
}

.contact__contents--confirm .contact__form {
  margin-top: 0;
}

@media (min-width: 768px) {
  .contact__form .recruit-page__links {
    justify-content: flex-start;
    padding: 0;
    margin-top: 2em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .contact__form .recruit-page__links {
    flex-direction: column;
    align-items: flex-start;
  }
  .contact__form .recruit-page__links svg {
    width: 0.94em;
    height: 0.56em;
    align-self: center;
  }
  .contact__form
    .recruit-page__links
    .recruit-page__link
    + .recruit-page__link {
    margin-top: 0.5em;
    margin-left: 0;
  }
}

.form__item + .form__item {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .form__item + .form__item {
    margin-top: 2em;
  }
}

@media (min-width: 768px) {
  .form__item {
    display: flex;
  }
}

.form__item dt {
  font-weight: 500;
  display: flex;
}

@media (min-width: 768px) {
  .form__item dt {
    flex: 0 0 auto;
    padding-top: calc(1em - 1px);
    width: 15em;
  }
}

.form__item dt::after {
  background-color: #959595;
  color: #fff;
  content: "\4EFB\610F";
  align-self: flex-start;
  padding: 0 1em;
}

@media (max-width: 767px) {
  .form__item dt::after {
    margin-left: 1.5em;
  }
}

@media (min-width: 768px) {
  .form__item dt::after {
    margin-left: auto;
  }
}

#confirm .form__item dt::after {
  display: none;
}

.form__item dt.req::after {
  background-color: #ca0000;
  content: "\5FC5\9808";
}

.form__item dd select,
.form__item dd .recruit-page__link {
  font-size: 1em;
}

@media (max-width: 767px) {
  .form__item dd {
    margin-top: 1em;
  }
}

@media (min-width: 768px) {
  .form__item dd {
    flex: 1 1 auto;
    padding-left: 1.5em;
  }
  .contact__contents--confirm .form__item dd {
    padding-top: calc(1em - 1px);
  }
}

.form__row {
  display: flex;
}

@media (max-width: 767px) {
  .form__row {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (min-width: 768px) {
  .form__row {
    align-items: center;
  }
}

@media (max-width: 767px) {
  .form__row .select__wrap {
    margin-top: 1em;
  }
  .form__row .select__wrap:not(:first-child) {
    margin-left: 2.75em;
  }
}

@media (min-width: 768px) {
  .form__row .select__wrap:not(:first-child) {
    margin-left: 3em;
  }
}

@media (max-width: 767px) {
  .form__row .radio__wrap:not(:first-child) {
    margin-top: 2em;
  }
}

@media (min-width: 768px) {
  .form__row .radio__wrap:not(:first-child) {
    margin-left: 2em;
  }
}

.form__row:not(:first-child) {
  margin-top: 2em;
}

@media (min-width: 768px) and (max-width: 900px) {
  .form__row--ss {
    flex-direction: column;
    align-items: flex-start;
    padding-top: 0.5em;
  }
  .form__row--ss .select__wrap {
    margin-left: 0;
    margin-top: 1em;
  }
}

.btn__container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.form__btn {
  margin: 40px auto 0;
}

@media (min-width: 768px) {
  .form__btn {
    margin-top: 4em;
  }
}

.form__back {
  color: #676767;
  margin: 30px auto 0;
  display: flex;
  align-items: center;
  line-height: 1;
  font-weight: 500;
  font-size: 13px;
}

@media (min-width: 768px) {
  .form__back {
    margin-top: 3.75em;
    font-size: 0.88em;
  }
}

.form__back::before {
  content: "";
  height: 0.63em;
  width: 0.63em;
  margin-right: 0.5em;
  border-top: 1px solid #676767;
  border-left: 1px solid #676767;
  transform: rotate(-45deg);
  transition: border-color 0.4s ease;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .form__back {
    transition: color 0.4s ease;
  }
  .form__back:hover {
    color: #005bac;
  }
  .form__back:hover::before {
    border-color: #005bac;
  }
}

.err-txt {
  color: #ca0000;
  margin-top: 0.5em;
}

@media (max-width: 767px) {
  .form__row--ss .err-txt {
    margin-left: 2.75em;
  }
}

@media (min-width: 901px) {
  .form__row--ss .err-txt {
    margin-left: 1em;
    margin-top: 0;
  }
}

.form__inquiry.err .radio__wrap span::before {
  background-color: #ffecec;
}

.form__row--ss.err select {
  background-color: #ffecec;
}

input[type="text"].err {
  border-color: #ca0000;
}

.contact_note {
  margin-top: 40px;
  font-weight: 500;
}

@media (min-width: 768px) {
  .contact_note {
    margin-top: 4em;
    text-align: center;
  }
}

.contact__window {
  border: 1px solid #eee;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: 92vw;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .contact__window {
    margin-top: 1.5em;
    height: 15em;
  }
}

.contact__privacy {
  padding: 20px;
}

@media (min-width: 768px) {
  .contact__privacy {
    padding: 2.86em;
  }
}

.contact__privacy h2 {
  font-size: 1.13em;
}

.contact__privacy h3 {
  font-weight: 500;
  font-size: 1.06em;
  margin-top: 3em;
}

.contact__privacy ol,
.contact__privacy ul {
  margin-left: 1.5em;
}

.contact__privacy ol:not(:first-child),
.contact__privacy ul:not(:first-child) {
  margin-top: 1em;
}

.contact__privacy ul {
  list-style: disc;
}

.contact__privacy p {
  margin-top: 1em;
}

.contact__privacy p.right {
  text-align: right;
}

.contact__privacy dl:not(:first-child) {
  margin-top: 1.5em;
}

@media (min-width: 768px) {
  .contact__privacy dl {
    display: flex;
    flex-wrap: wrap;
  }
}

.contact__privacy dl .list__head {
  font-weight: 500;
}

@media (max-width: 767px) {
  .contact__privacy dl .list__head {
    display: none;
  }
}

@media (max-width: 767px) {
  .contact__privacy dt,
  .contact__privacy dd.list__head {
    font-weight: 500;
  }
}

@media (min-width: 768px) {
  .contact__privacy dt,
  .contact__privacy dd {
    border-bottom: 1px solid #eee;
    padding: 1em 0;
  }
}

@media (max-width: 767px) {
  .contact__privacy dt {
    margin-top: 1.5em;
  }
}

@media (max-width: 767px) {
  .contact__privacy dd {
    padding-top: 0.5em;
    padding-left: 13px;
  }
}

.contact__privacy a {
  color: #005bac;
}

.contact__privacy .privacypolicy__mark {
  margin-top: 30px;
}

@media (min-width: 768px) {
  .contact__privacy .privacypolicy__mark {
    margin-top: 2.5em;
  }
}

.contact__privacy .privacypolicy__mark img {
  width: auto;
  max-width: 100%;
}

@media (min-width: 768px) {
  .contact__privacy .privacypolicy__mark img {
    width: 5.19em;
  }
}

.form__back {
  cursor: pointer;
}

@media (min-width: 768px) {
  #profile .c-sec {
    padding: 6.25em 0;
  }
}

@media (min-width: 768px) {
  .prof__contents {
    padding-left: 2.19em;
    padding-right: 2.19em;
  }
}

.board,
.history,
.airports {
  background-color: #fafafa;
}

.overview__list,
.overseas__list {
  border-top: 1px solid #bfbfbf;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .overview__list,
  .overseas__list {
    margin-top: 1.25em;
  }
}

.overview__item,
.overseas__item {
  border-bottom: 1px solid #bfbfbf;
}

@media (max-width: 767px) {
  .overview__item,
  .overseas__item {
    padding: 1em 0;
  }
}

@media (min-width: 768px) {
  .overview__item,
  .overseas__item {
    display: flex;
  }
}

@media (min-width: 768px) {
  .overview__item dt,
  .overseas__item dt {
    flex: 0 0 auto;
    padding: 1.07em 2.5em;
    width: 11.86em;
  }
}

@media (max-width: 767px) {
  .overview__item dd,
  .overseas__item dd {
    padding-left: 1em;
  }
}

@media (min-width: 768px) {
  .overview__item dd,
  .overseas__item dd {
    flex: 1 1 auto;
    padding: 1.07em 0;
  }
}

.overview__item .c-txt-link,
.overseas__item .c-txt-link {
  color: #000;
}

.chart__fig {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .chart__fig {
    margin-top: 1.25em;
  }
}

.board__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
}

@media (max-width: 767px) {
  .board__list {
    width: 92vw;
  }
}

@media (min-width: 768px) {
  .board__list {
    justify-content: center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .board__list {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .board__list {
    flex-wrap: wrap;
  }
}

.board__person {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
  padding-bottom: 2em;
}

@media (max-width: 767px) {
  .board__person {
    width: 48.5%;
  }
  .board__person:nth-child(even) {
    margin-left: auto;
  }
  .board__person:nth-child(2) ~ .board__person {
    margin-top: 20px;
  }
  .board__person .c-btn,
  .board__person .footer__pagetop {
    width: 110px;
  }
  .board__person .c-btn::before,
  .board__person .footer__pagetop::before {
    top: calc(50% - 55px);
    left: calc(50% - 55px);
    height: 110px;
    width: 110px;
  }
}

@media (min-width: 768px) {
  .board__person {
    margin: 3.5% 2.75% 0;
    width: 20.31%;
  }
}

.board__person img {
  min-height: 0%;
}

.board__pos {
  font-weight: 500;
  margin-top: 2.29em;
}

.board__name {
  font-weight: 500;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 0.19em;
}

.board__name::after {
  content: attr(data-eng);
  color: #999;
  font-size: 0.57em;
}

.board__btn {
  margin-top: 1.13em;
}

@media (min-width: 768px) {
  .initiatives__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.initiatives__item:first-of-type {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .initiatives__item:first-of-type {
    margin-top: 1.25em;
  }
}

.initiatives__item:not(:first-of-type) {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .initiatives__item:not(:first-of-type) {
    margin-top: 4.25em;
  }
}

@media (min-width: 768px) {
  .initiatives__item:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}

.initiatives__item h2 {
  font-size: 17px;
}

@media (max-width: 767px) {
  .initiatives__item h2 {
    margin-top: 25px;
  }
}

@media (min-width: 768px) {
  .initiatives__item h2 {
    font-size: 1.5em;
    line-height: 1.46;
  }
}

.initiatives__item p {
  margin-top: 1em;
}

@media (min-width: 768px) {
  .initiatives__item p {
    margin-top: 1.5em;
    padding-right: 1em;
  }
}

@media (min-width: 768px) {
  .initiatives__pic {
    width: 46.4%;
  }
}

@media (min-width: 768px) {
  .initiatives__details {
    width: 46.4%;
  }
}

#profile .history h2,
.overseas h3 {
  font-size: 18px;
}

@media (max-width: 767px) {
  #profile .history h2,
  .overseas h3 {
    line-height: 1.5;
  }
}

@media (min-width: 768px) {
  #profile .history h2,
  .overseas h3 {
    font-size: 1.5em;
  }
}

#profile .history dt,
#profile .history dd p {
  line-height: 2;
}

@media (min-width: 768px) {
  #profile .history dt,
  #profile .history dd p {
    line-height: 3.43;
  }
}

#profile .history dt {
  font-weight: 500;
  flex: 0 0 auto;
  color: #005bac;
  width: 4.86em;
}

#profile .history dd {
  flex: 1 1 auto;
}

#profile .history p {
  position: relative;
  padding-left: 1em;
}

#profile .history p::before {
  position: absolute;
  top: 0.75em;
  left: 0;
  background-color: #005bac;
  border-radius: 50%;
  height: 0.5em;
  width: 0.5em;
  content: "";
}

@media (min-width: 768px) {
  #profile .history p::before {
    top: 1.5em;
  }
}

@media (min-width: 1280px) {
  #profile .history p::before {
    height: 7px;
    width: 7px;
  }
}

@media (min-width: 1680px) {
  #profile .history p::before {
    height: 8px;
    width: 8px;
  }
}

#profile .history__list {
  margin-top: 20px;
}

@media (min-width: 768px) {
  #profile .history__list {
    margin-top: 2em;
  }
}

#profile .history__year {
  display: flex;
}

.offices h2 {
  color: #005bac;
  font-size: 20px;
}

@media (min-width: 768px) {
  .offices h2 {
    font-size: 1.71em;
  }
}

.offices .c-cols__item,
.offices .store {
  margin-top: 20px;
}

@media (max-width: 767px) {
  .offices .c-cols__item,
  .offices .store {
    width: 48%;
  }
}

@media (min-width: 768px) {
  .offices .c-cols__item,
  .offices .store {
    margin-top: 1.56em;
    padding-top: 1.38em;
    width: calc(33.33% - 1.25em);
  }
}

@media (min-width: 768px) {
  .offices .c-cols__item .offices__btn,
  .offices .store .offices__btn {
    margin-top: auto;
  }
}

.offices .c-cols__pic {
  margin-top: 0;
}

.offices-head {
  margin-top: 20px;
}

@media (min-width: 768px) {
  .offices-head {
    display: flex;
    margin-top: 1.25em;
  }
}

.offices-head__details {
  background-color: #fafafa;
  padding: 30px 20px;
}

@media (min-width: 768px) {
  .offices-head__details {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 0 2.5em;
    width: 50%;
  }
}

@media (min-width: 901px) {
  .offices-head__details {
    padding-left: 4.5em;
  }
}

.offices-head__details p {
  margin-top: 0.75em;
}

.offices__btn {
  margin: 20px auto 0;
}

@media (min-width: 768px) {
  .offices__btn {
    margin-top: 1.5em;
  }
}

@media (min-width: 768px) {
  .offices__pic {
    width: 50%;
  }
}

.offices__contents {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .offices__contents {
    margin-top: 4.5em;
  }
}

.offices__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media (min-width: 768px) {
  .offices__list::after {
    content: "";
    width: calc(33.33% - 1.25em);
  }
}

.offices__ttl {
  font-weight: bold;
  line-height: 1.29;
  margin-top: 0.67em;
}

.offices__txt {
  margin-top: 0.5em;
  margin-bottom: 1em;
}

@media (min-width: 768px) {
  .offices__txt {
    margin-bottom: 1.71em;
  }
}

.stores {
  margin-top: 40px;
  padding-bottom: 60px;
}

@media (min-width: 768px) {
  .stores {
    margin-top: 4.5em;
    padding-bottom: 4.5em;
  }
}

.store {
  padding: 0 !important;
}

.airports,
.overseas {
  width: 100%;
}

@media (min-width: 768px) {
  .airports,
  .overseas {
    padding: 4.5em 0 !important;
  }
}

@media (max-width: 767px) {
  .airports {
    margin-left: -4vw;
    margin-right: -4vw;
    width: 100vw;
  }
}

.airport {
  margin-top: 1.5em;
}

@media (min-width: 768px) {
  .airport {
    margin-top: 1.56em;
    width: 50%;
  }
}

.airport__list {
  margin-top: 0.75em;
}

.airport__list li {
  position: relative;
}

@media (max-width: 767px) {
  .airport__list li {
    padding-left: 1em;
  }
}

@media (min-width: 768px) {
  .airport__list li {
    display: flex;
    align-items: baseline;
  }
}

.airport__list li::before {
  background-color: #005bac;
  border-radius: 50%;
  height: 0.5em;
  width: 0.5em;
  content: "";
  transform: translateY(-0.13em);
  margin-right: 0.5em;
}

@media (max-width: 767px) {
  .airport__list li::before {
    position: absolute;
    top: 0.75em;
    left: 0;
  }
}

@media (min-width: 1280px) {
  .airport__list li::before {
    height: 7px;
    width: 7px;
  }
}

@media (min-width: 1680px) {
  .airport__list li::before {
    height: 8px;
    width: 8px;
  }
}

.airport__list span {
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}

@media (max-width: 767px) {
  .airport__list span.w85em {
    margin-right: 1em;
  }
}

@media (min-width: 768px) {
  .airport__list span.w45em {
    width: 4.5em;
  }
  .airport__list span.w85em {
    width: 8.5em;
  }
}

.overseas {
  padding-bottom: 0 !important;
}

.overseas h3 {
  margin-top: 0.5em;
}

.overseas p + h3 {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .overseas p + h3 {
    margin-top: 3em;
  }
}

.overseas__lead {
  margin-top: 0.5em;
}

.overseas__list {
  margin-top: 1.25em;
}

@media (min-width: 768px) {
  .overseas__list {
    margin-left: -2.19em;
    margin-right: -2.19em;
    width: calc(100% + 4.38em);
  }
}

@media (min-width: 768px) {
  .overseas__item {
    align-items: center;
  }
}

.overseas__item dt {
  font-weight: bold;
}

@media (min-width: 768px) {
  .overseas__item dd {
    display: flex;
    align-items: center;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .overseas__item dd {
    justify-content: space-between;
  }
}

@media (max-width: 767px) {
  .overseas__btn {
    margin: 20px auto 0;
  }
}

@media (min-width: 768px) {
  .overseas__btn {
    width: 6.13em;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .overseas__btn {
    margin-left: 3em;
    flex: 0 0 auto;
  }
}

@media (min-width: 768px) {
  .overseas__btn::before {
    top: calc(50% - 3.06em);
    left: calc(50% - 3.06em);
    height: 6.13em;
    width: 6.13em;
  }
}

@media (min-width: 901px) {
  .overseas__btn {
    margin-left: auto;
  }
}

.mask {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 20;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}

.mask.show {
  opacity: 1;
  pointer-events: auto;
}

.popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fafafa;
  z-index: 21;
  display: flex;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}

.popup.show {
  opacity: 1;
  pointer-events: auto;
}

@media (max-width: 1279px) and (orientation: portrait) {
  .popup {
    flex-direction: column;
    height: 80vh;
  }
}

@media (max-width: 1279px) and (orientation: portrait) and (max-width: 767px) {
  .popup {
    width: 90vw;
  }
}

@media (max-width: 1279px) and (orientation: landscape) {
  .popup {
    width: 90vw;
  }
}

@media (min-width: 1280px) {
  .popup {
    height: 31.25em;
    width: 62.5em;
  }
}

@media (max-width: 1279px) and (orientation: portrait) {
  .popup__details,
  .popup__pic {
    height: 50%;
  }
}

@media (max-width: 1279px) and (orientation: landscape) {
  .popup__details,
  .popup__pic {
    width: 50%;
  }
}

@media (min-width: 1280px) {
  .popup__details,
  .popup__pic {
    width: 50%;
  }
}

.popup__details {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 20px;
}

@media (min-width: 768px) {
  .popup__details {
    padding: 0 2.5em;
  }
}

.popup__details .c-btn,
.popup__details .footer__pagetop {
  margin-top: 1.5em;
}

.popup__name {
  display: flex;
  align-items: baseline;
}

@media (min-width: 768px) {
  .popup__name {
    font-size: 1.69em;
  }
}

.popup__name::after {
  content: attr(data-eng);
  color: #999;
  font-size: 0.52em;
  margin-left: 1em;
}

.popup__prof {
  margin-top: 0.5em;
}

.close {
  position: absolute;
  right: 0;
  cursor: pointer;
}

@media (max-width: 767px) {
  .close {
    background-color: #005bac;
    height: 50px;
    width: 50px;
    top: 0;
  }
}

@media (min-width: 768px) {
  .close {
    bottom: 100%;
    height: 4em;
    width: 4em;
  }
}

@media (hover: hover), (-ms-high-contrast: none) {
  .close {
    transition: opacity 0.4s ease;
  }
  .close:hover {
    opacity: 0.7;
  }
}

.close span {
  position: absolute;
  top: calc(50% - 1px);
  left: 8px;
  right: 8px;
  background-color: #fff;
  border-radius: 1px;
  height: 2px;
  transform: rotate(-45deg);
}

@media (min-width: 768px) {
  .close span {
    left: 0;
    right: 0;
    width: 100%;
  }
}

.close span:last-child {
  transform: rotate(45deg);
}

.result-search {
  display: flex;
}

.result-search__input {
  padding: 0.5em 1em !important;
  width: auto !important;
  flex: 1 1 auto;
  border-right: none;
  border-top-left-radius: 18px;
  border-bottom-left-radius: 18px;
}

@media (min-width: 768px) {
  .result-search__input {
    border-top-left-radius: 1.31em;
    border-bottom-left-radius: 1.31em;
  }
}

.result-search__input::placeholder {
  color: #999797;
}

.result-search__submit {
  background: linear-gradient(to right, #437fec, #4cd9ed);
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 0.75em;
  letter-spacing: 0.1em;
  padding-left: 0.1em;
  border: none;
  flex: 0 0 auto;
  width: 7em;
  border-top-right-radius: 18px;
  border-bottom-right-radius: 18px;
}

@media (max-width: 767px) {
  .result-search__submit {
    padding-right: 0.25em;
  }
}

@media (min-width: 768px) {
  .result-search__submit {
    border-top-right-radius: 1.75em;
    border-bottom-right-radius: 1.75em;
    width: 14.17%;
  }
}

.result__lead {
  color: #005bac;
  font-weight: 500;
  font-size: 15px;
  margin: 30px 0;
}

@media (min-width: 768px) {
  .result__lead {
    font-size: 1.5em;
    text-align: center;
    margin: 2.33em 0;
  }
}

.result__none {
  color: #005bac;
  font-weight: 500;
  margin: 30px 0;
}

@media (min-width: 768px) {
  .result__none {
    font-size: 1.06em;
    text-align: center;
    margin: 2.47em 0;
  }
}

.result-list {
  border-bottom: 1px solid #999797;
}

.result-list__item {
  border-top: 1px solid #999797;
  padding: 1.5em 0;
}

@media (min-width: 768px) {
  .result-list__item {
    padding: 1.5em;
  }
}

.result-list__ttl {
  font-weight: bold;
  font-size: 15px;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .result-list__ttl {
    font-size: 1.06em;
    line-height: 1.41;
    letter-spacing: 0.06em;
  }
}

.result-list__ttl a {
  color: #000;
}

.result-list__ttl a span {
  background-color: #3cd5fa;
}

.result-list__excerpt {
  margin-top: 1.25em;
}

@media (min-width: 768px) {
  .result-list__excerpt {
    font-size: 0.88em;
    line-height: 1.71;
    letter-spacing: 0.035em;
    margin-top: 1.25em;
  }
}

.result-list__excerpt span {
  background-color: #3cd5fa;
}

.result-pagenav {
  display: flex;
  align-items: center;
  width: 100%;
  font-family: "Montserrat", sans-serif;
  margin-top: 25px;
}

@media (min-width: 768px) {
  .result-pagenav {
    justify-content: center;
    margin-top: 2.13em;
  }
}

.result-pagenav__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.result-pagenav__list > * {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.71em;
  margin-left: 0.71em;
  width: 1.86em;
  height: 1.86em;
}

@media (min-width: 768px) {
  .result-pagenav__list > * {
    font-size: 0.88em;
  }
}

.result-pagenav__list span {
  background-color: #005bac;
  color: #fff;
}

.result-pagenav__list a {
  background-color: #efefef;
}

@media (hover: hover), (-ms-high-contrast: none) {
  .result-pagenav__list a {
    transition: background-color 0.4s ease;
  }
  .result-pagenav__list a:hover {
    background-color: #005bac;
    color: #fff;
  }
}

.result-pagenav__count {
  margin-top: 0.71em;
  margin-right: 0.71em;
  white-space: nowrap;
  flex: 0 0 auto;
  width: auto;
}

.lang__btn {
  border: none;
}

.search__btn {
  display: block;
}

.WCMeditablecontentcontent .a-fade {
  opacity: 1;
}

.WCMeditablecontentcontent .a-fade-btm {
  opacity: 1;
}

.WebEditor .a-fade {
  opacity: 1;
}

.WebEditor .a-fade-btm {
  opacity: 1;
}
.a-fade {
  opacity: 0;
}
.a-fade-btm {
  opacity: 0;
  transform: translateY(1.88em);
}

/*# sourceMappingURL=common.css.map */

/* 20200305 add */
@media (max-width: 767px) {
  .footer-overseas {
    padding-left: 0;
    padding-right: 0;
  }
  .footer-overseas__list {
    width: 300px;
    margin: 0 auto;
  }
  .footer-overseas__item {
    width: auto;
  }
  .footer-overseas__item span a {
    padding: 0 !important;
  }
  .footer-overseas__item > a,
  .footer-overseas__item > span {
    padding: 0 15px !important;
  }
  .footer-overseas__item:last-child {
    border-left: 1px solid #000;
  }
}

/* 20200416 add */
@media (min-width: 768px) {
  body:not(#top) .page__wrapper {
    height: 6em;
  }
}

/* 20200617 for telework */

/* --------------------
	title
 -------------------- */

#telework-project .title {
  position: relative;
  background: url("../img_hc/service/tw_title_bg.jpg") center 80px no-repeat;
  background-size: cover;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#telework-project .title .tw-header {
  display: flex;
  justify-content: space-between;
  padding: 20px 40px 20px 66px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 10;
}
#telework-project .title .tw-header .logo {
  background: url("../img_hc/service/tw_telecomsquare_logo.png") center center
    no-repeat;
  background-size: cover;
  width: 159px;
  height: 35px;
}
#telework-project .title .tw-header a {
  font-size: 16px;
  width: 312px;
}
#telework-project .title .tw-header a.c-btn:before {
  width: 312px;
  left: calc(50% - 156px);
}
#telework-project .title .tw-header a.c-btn:hover:before {
  transform: none;
}
#telework-project .title .tw-header a img {
  position: absolute;
  top: 12px;
  right: 28px;
  width: auto;
  z-index: 10;
}
#telework-project .title .lead-box {
  width: 750px;
  background-color: rgba(0, 0, 0, 0.5);
  margin: 76px auto 0;
  text-align: center;
  padding: 50px 0 35px;
  color: #fff;
}
#telework-project .title .lead-box h1 {
  font-size: 32px;
  font-weight: normal;
}
#telework-project .title .lead-box p {
  font-size: 16px;
  margin-bottom: 20px;
}
#telework-project .title .lead-box p.lead {
  font-size: 20px;
}
#telework-project .title .lead-box a {
  border: 2px solid #fff;
  width: 260px;
  font-size: 16px;
  margin: 0 auto;
  color: #fff;
  display: block;
  border-radius: 50px;
  padding: 10px 0;
  position: relative;
}
#telework-project .title .lead-box a:after {
  content: "";
  position: absolute;
  top: 20px;
  right: 40px;
  background: url("../img_hc/service/tw_mail_w.png") center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 11px;
}

/* --------------------
	covid19-caution
 -------------------- */

#telework-project .covid19-caution {
  padding: 80px 0;
  background-color: #fafafa;
}
#telework-project .covid19-caution p {
  font-size: 16px;
  text-align: center;
  margin: 0 auto;
  width: 800px;
  line-height: 1.75;
  border: 2px solid #005bac;
  padding: 17px 0;
}

/* --------------------
	how-change
 -------------------- */

#telework-project .how-change {
  background-color: #fafafa;
}
#telework-project .how-change h1 {
  font-size: 28px;
}
#telework-project .how-change .question {
  overflow: hidden;
  width: 800px;
  margin: 0 auto;
}
#telework-project .how-change .question ul {
  float: left;
  width: 420px;
  padding: 90px 10px 10px;
}
#telework-project .how-change .question ul li {
  width: 100%;
  background-color: #fff;
  font-size: 16px;
  margin-bottom: 16px;
  border-radius: 10px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  padding: 25px 0 25px 70px;
  line-height: 1.2;
  position: relative;
}
#telework-project .how-change .question ul li:after {
  position: absolute;
  content: "";
  background: url("../img_hc/service/tw_check_mark.png") center center no-repeat;
  background-size: 75%;
  width: 37px;
  height: 28px;
  top: 23px;
  left: 20px;
}
#telework-project .how-change .question img {
  float: right;
  width: 45%;
}
#telework-project .how-change .package {
  background-color: #fff;
  padding: 150px 0 90px;
}
#telework-project .how-change .package h2 {
  text-align: center;
  color: #005bac;
  font-weight: normal;
  font-size: 32px;
  position: relative;
  margin-bottom: 62px;
}
#telework-project .how-change .package h2 span {
  font-size: 20px;
  display: block;
}
#telework-project .how-change .package h2:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: calc(50% - 250px);
  width: 500px;
  height: 10px;
  background: linear-gradient(90deg, #437fec, #4cd9ed);
}
#telework-project .how-change .package ul {
  display: flex;
  justify-content: center;
  width: 1218px;
  margin: 0 auto 34px;
}
#telework-project .how-change .package ul li {
  margin-left: 135px;
  position: relative;
}
#telework-project .how-change .package ul li:first-child {
  margin-left: 0;
}
#telework-project .how-change .package ul li:after {
  content: "";
  background: url("../img_hc/service/tw_plus.png") center center no-repeat;
  width: 41px;
  height: 41px;
  position: absolute;
  top: 110px;
  left: -90px;
}
#telework-project .how-change .package ul li:first-child:after {
  content: none;
}
#telework-project .how-change .package ul li p {
  text-align: center;
}
#telework-project .how-change .package p.note {
  font-size: 12px;
  text-align: center;
  margin-bottom: 40px;
}
#telework-project .how-change .package a {
  width: 240px;
  display: block;
  margin: 0 auto;
  background-color: #005bab;
  color: #fff;
  text-align: center;
  font-size: 16px;
  border-radius: 50px;
  padding: 16px;
  position: relative;
}
#telework-project .how-change .package a:after {
  content: "";
  position: absolute;
  background: url("../img_hc/service/tw_mail_w.png") center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 11px;
  top: 25px;
  right: 40px;
}

/* --------------------
	work-change
 -------------------- */

#telework-project .work-change h1 {
  font-size: 28px;
}
#telework-project .work-change ul {
  width: 960px;
  margin: 0 auto;
}
#telework-project .work-change ul li {
  background-color: #fafafa;
  display: flex;
  margin-top: 32px;
}
#telework-project .work-change ul li:first-child {
  margin-top: 0;
}
#telework-project .work-change ul li:nth-child(even) {
  flex-direction: row-reverse;
}
#telework-project .work-change ul li img {
  width: 480px;
}
#telework-project .work-change ul li > div {
  width: 480px;
  padding: 0 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#telework-project .work-change ul li > div h2 {
  font-size: 24px;
  font-weight: normal;
  color: #005bab;
  line-height: 1.75;
  margin-bottom: 12px;
}
#telework-project .work-change ul li > div p {
  font-size: 14px;
  line-height: 1.75;
}

/* --------------------
	historical
 -------------------- */

#telework-project .historical {
  padding: 106px 0 0;
}
#telework-project .historical > img {
  display: block;
  margin: 0 auto 14px;
  width: 250px;
}
#telework-project .historical h1 {
  font-size: 31px;
  font-weight: normal;
  text-align: center;
  margin-bottom: 54px;
}
#telework-project .historical .img-view {
  background: url("../img_hc/service/tw_trust_image.jpg") center center no-repeat;
  background-size: 100% auto;
  height: 480px;
}
#telework-project .historical ul {
  background-color: #53a6ef;
}
#telework-project .historical ul li {
  width: 900px;
  margin: 0 auto;
  color: #fff;
  border-bottom: 1px solid #cce1ec;
  padding: 50px 33px 70px;
}
#telework-project .historical ul li h2 {
  font-size: 20px;
  font-weight: normal;
  line-height: 1.75;
  position: relative;
  margin-bottom: 55px;
}
#telework-project .historical ul li h2:after {
  content: "";
  background-color: #d4faff;
  width: 80px;
  height: 6px;
  position: absolute;
  bottom: -17px;
  left: 0;
}
#telework-project .historical ul li p {
  font-size: 14px;
  line-height: 1.75;
}

/* --------------------
	inquiry
 -------------------- */

#telework-project .inquiry {
  background: url("../img_hc/service/tw_inquiry_bg.jpg") center top no-repeat;
  background-size: cover;
  min-height: 480px;
  text-align: center;
  padding: 128px 0 0;
}
#telework-project .inquiry p {
  font-size: 30px;
  line-height: 1.75;
  color: #fff;
  margin-bottom: 20px;
}
#telework-project .inquiry a {
  display: block;
  margin: 0 auto;
  width: 240px;
  border: 2px solid #fff;
  color: #fff;
  font-size: 16px;
  padding: 16px 0;
  position: relative;
  border-radius: 50px;
}
#telework-project .inquiry a:after {
  content: "";
  position: absolute;
  background: url("../img_hc/service/tw_mail_w.png") center center no-repeat;
  background-size: contain;
  width: 14px;
  height: 11px;
  top: 25px;
  right: 30px;
}

/* --------------------
	tw-footer
 -------------------- */

#telework-project .tw-footer {
  background-color: #0b4f74;
  color: #fff;
  text-align: center;
  padding: 33px 0 23px;
}
#telework-project .tw-footer p {
  font-size: 22px;
}
#telework-project .tw-footer address {
  font-size: 14px;
}

/* --------------------
	copyright
 -------------------- */

#telework-project .copyright {
  background-color: #657786;
  color: #fff;
  text-align: center;
  font-size: 11px;
  padding: 14px 0 18px;
}

@media (max-width: 767px) {
  /* --------------------
		title
	 -------------------- */

  #telework-project .title {
    background: none;
  }
  #telework-project .title .tw-header {
    display: block;
    background-color: transparent;
    padding: 23px 0 0;
  }
  #telework-project .title .tw-header .logo {
    background: none;
    display: block;
    width: 30%;
    margin: 0 auto;
  }
  #telework-project .title .tw-header .c-btn {
    display: none;
  }
  #telework-project .title > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #telework-project .title .tw-header a img {
    position: relative;
    top: initial;
    right: initial;
  }
  #telework-project .title .lead-box {
    position: absolute;
    z-index: 10;
    top: 173px;
    left: 14%;
    width: 72%;
    margin: 0;
    padding: 43px 0 40px;
  }
  #telework-project .title .lead-box h1 {
    font-size: 21px;
  }
  #telework-project .title .lead-box p {
    font-size: 13px;
  }
  #telework-project .title .lead-box p.lead {
    font-size: 14px;
  }
  #telework-project .title .lead-box a {
    width: 74%;
    font-size: 14px;
  }
  #telework-project .title .lead-box a:after {
    top: 16px;
    right: 20px;
  }

  /* --------------------
	covid19-caution
	 -------------------- */

  #telework-project .covid19-caution {
    padding: 36px 0 57px;
  }
  #telework-project .covid19-caution p {
    font-size: 13px;
    width: auto;
    padding: 15px 8%;
    margin: 0 27px;
  }

  /* --------------------
		how-change
	 -------------------- */

  #telework-project .how-change h1 {
    font-size: 16px;
    line-height: 1.75;
  }
  #telework-project .how-change .question {
    width: 100%;
    overflow: visible;
  }
  #telework-project .how-change .question ul {
    float: none;
    width: auto;
    padding: 0;
    margin: 0 35px;
  }
  #telework-project .how-change .question ul li {
    font-size: 13px;
    margin-bottom: 16px;
    padding: 20px 0 20px 42px;
  }
  #telework-project .how-change .question ul li:after {
    width: 17px;
    height: 13px;
    top: calc(50% - 6px);
    left: 5%;
    background-size: contain;
  }
  #telework-project .how-change .question img {
    float: none;
    margin: 0 auto;
    width: 65%;
    display: block;
  }
  #telework-project .how-change .package {
    padding: 50px 0 60px;
  }
  #telework-project .how-change .package h2 {
    font-size: 19px;
    margin-bottom: 28px;
  }
  #telework-project .how-change .package h2 span {
    font-size: 14px;
  }
  #telework-project .how-change .package h2:after {
    left: 11.35%;
    width: 77.3%;
    height: 5px;
  }
  #telework-project .how-change .package ul {
    width: auto;
    margin: 0 25px;
  }
  #telework-project .how-change .package ul li {
    margin-left: 27px;
  }
  #telework-project .how-change .package ul li:after {
    width: 20px;
    height: 20px;
    background-size: contain;
    top: calc(50% - 10px);
    left: -27%;
  }
  #telework-project .how-change .package ul li p {
    font-size: 12px;
  }
  #telework-project .how-change .package p.note {
    font-size: 11px;
    margin-bottom: 16px;
  }
  #telework-project .how-change .package a {
    width: 53%;
    font-size: 14px;
    padding: 10px 0;
  }
  #telework-project .how-change .package a:after {
    top: calc(50% - 5px);
    right: 12%;
  }

  /* --------------------
		work-change
	 -------------------- */

  #telework-project .work-change h1 {
    font-size: 16px;
    line-height: 1.75;
  }
  #telework-project .work-change ul {
    width: auto;
    margin: 0 25px;
  }
  #telework-project .work-change ul li {
    display: block;
    margin-top: 30px;
  }
  #telework-project .work-change ul li img {
    width: 100%;
  }
  #telework-project .work-change ul li > div {
    width: 100%;
    padding: 14px 18px 25px;
  }
  #telework-project .work-change ul li > div h2 {
    font-size: 18px;
  }
  #telework-project .work-change ul li > div p {
    font-size: 14px;
  }

  /* --------------------
		historical
	 -------------------- */

  #telework-project .historical {
    padding: 54px 0 0;
  }
  #telework-project .historical > img {
    width: 45%;
    margin: 0 auto 8px;
  }
  #telework-project .historical h1 {
    font-size: 24px;
    margin-bottom: 34px;
  }
  #telework-project .historical .img-view {
    height: 290px;
    background-size: auto 108%;
  }
  #telework-project .historical ul li {
    width: auto;
    padding: 34px 22px 38px;
    margin: 0 22px;
  }
  #telework-project .historical ul li h2 {
    font-size: 18px;
    margin-bottom: 42px;
  }
  #telework-project .historical ul li h2:after {
    width: 40px;
    height: 3px;
    bottom: -25px;
  }
  #telework-project .historical ul li p {
    font-size: 14px;
  }

  /* --------------------
		inquiry
	 -------------------- */

  #telework-project .inquiry {
    background: url("../img_hc/service/tw_inquiry_bg_sp.jpg") center bottom
      no-repeat;
    background-size: contain;
    min-height: 390px;
    padding: 61px 0 0;
  }
  #telework-project .inquiry p {
    font-size: 17px;
    margin-bottom: 52px;
  }
  #telework-project .inquiry a {
    width: 53%;
    font-size: 14px;
    padding: 10px 0;
  }
  #telework-project .inquiry a:after {
    top: 17px;
  }

  /* --------------------
		tw-footer
	 -------------------- */

  #telework-project .tw-footer {
    text-align: left;
    padding: 19px 24px 20px;
  }
  #telework-project .tw-footer p {
    font-size: 12px;
  }
  #telework-project .tw-footer address {
    font-size: 12px;
  }

  /* --------------------
		copyright
	 -------------------- */

  #telework-project .copyright {
    font-size: 10px;
    padding: 17px 0 16px;
  }
}

/* pinnar-v2 expand 2020.11.6*/

/* --------------------
	exist top area
 -------------------- */

#pinnar-v2 .fixed__header,
#pinnarbiz .fixed__header,
#pinnarutility .fixed__header {
  z-index: 1000;
}
#pinnar-v2 .page__head,
#pinnarbiz .page__head,
#pinnarutility .page__head {
  padding-top: 0;
  height: 2em;
}
#pinnar-v2 .page__heading,
#pinnar-v2 .page__head .page__lead-logo,
#pinnarbiz .page__heading,
#pinnarbiz .page__head .page__lead-logo,
#pinnarutility .page__heading,
#pinnarutility .page__head .page__lead-logo {
  display: none;
}

#pinnar-v2 .wrap {
  width: 1320px;
  margin: 0 auto;
}
#pinnar-v2 .header-nav,
#pinnarbiz .header-nav,
#pinnarutility .header-nav {
  margin: 0 auto;
}

/* --------------------
	title-sec
 -------------------- */

#pinnar-v2 .title-sec {
  background: url("../img_hc/service/pinnar_title_bg.jpg") top center no-repeat;
  background-size: cover;
  position: relative;
  min-width: 1320px;
}
#pinnar-v2 .title-sec .wrap {
  padding: 35px 0 39px;
  display: flex;
  justify-content: center;
}
#pinnar-v2 .title-sec .wrap .info-box {
  width: 556px;
  margin-top: 91px;
  margin-right: 24px;
  position: relative;
}
#pinnar-v2 .title-sec .wrap .info-box h1 {
  margin-bottom: 30px;
}
#pinnar-v2 .title-sec .wrap .info-box ul {
  overflow: hidden;
  margin-left: 43px;
  margin-bottom: 55px;
}
#pinnar-v2 .title-sec .wrap .info-box ul li {
  float: left;
  margin-right: 9px;
}
#pinnar-v2 .title-sec .wrap .info-box ul li.apple {
  width: 156px;
}
#pinnar-v2 .title-sec .wrap .info-box ul li.google {
  width: 170px;
}
#pinnar-v2 .title-sec .wrap .info-box .free-icon {
  color: #fff;
  background-color: #ff4680;
  font-size: 28px;
  width: 122px;
  border-radius: 5px;
  text-align: center;
  position: absolute;
  top: 253px;
  right: 40px;
  height: 53px;
}
#pinnar-v2 .title-sec .wrap .info-box .inquiry {
  display: block;
  color: #005bac;
  font-size: 24px;
  font-weight: bold;
  position: relative;
  width: 350px;
  background-color: #fff;
  border-radius: 50px;
  padding: 15px 0;
  margin-left: 114px;
  text-align: center;
  border: 4px solid #005bac;
  z-index: 9;
}
#pinnar-v2 .title-sec .wrap .info-box .inquiry:hover {
  background-color: #ffb216;
  border: 4px solid #fff;
  color: #fff;
}
#pinnar-v2 .title-sec .wrap .info-box .inquiry:after {
  content: "";
  position: absolute;
  top: calc(50% - 6.5px);
  right: 40px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6.5px 0 6.5px 10px;
  border-color: transparent transparent transparent #005cac;
}
#pinnar-v2 .title-sec .wrap .info-box .inquiry:hover:after {
  border-color: transparent transparent transparent #fff;
}
#pinnar-v2 .title-sec .wrap .img-box {
  width: 370px;
  margin-left: 24px;
}
#pinnar-v2 .title-sec .wrap .img-box .new {
  margin-bottom: 20px;
}
#pinnar-v2 .title-sec .wrap .img-box .using {
  width: 204px;
  display: block;
  margin: 0 auto;
}

/* --------------------
	lead
 -------------------- */

#pinnar-v2 > .lead {
  background: linear-gradient(0deg, #2bbff5, #6a8afe);
  position: relative;
  min-width: 1320px;
}
#pinnar-v2 > .lead:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 156px;
  background: url("../img_hc/service/pinnar_bottom_white_bg.png") center top
    no-repeat;
  background-size: 100% 156px;
}
#pinnar-v2 .lead .wrap {
  padding: 100px 141px 247px;
  color: #fff;
  position: relative;
}
#pinnar-v2 .lead .wrap p {
  font-size: 16px;
  line-height: 1.56;
  position: relative;
  z-index: 9;
}
#pinnar-v2 .lead .wrap p.lead-text {
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 100px;
}
#pinnar-v2 .lead .wrap .inquiry {
  display: block;
  color: #005bac;
  font-size: 24px;
  font-weight: bold;
  position: relative;
  width: 350px;
  background-color: #fff;
  border-radius: 50px;
  padding: 15px 0;
  margin-bottom: 30px;
  margin-left: 164px;
  text-align: center;
  border: 4px solid #fff;
  z-index: 9;
}
#pinnar-v2 .lead .wrap .inquiry:hover {
  background-color: #ffb216;
  color: #fff;
}
#pinnar-v2 .lead .wrap .inquiry:after {
  content: "";
  position: absolute;
  top: calc(50% - 6.5px);
  right: 40px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6.5px 0 6.5px 10px;
  border-color: transparent transparent transparent #005cac;
}
#pinnar-v2 .lead .wrap .inquiry:hover:after {
  border-color: transparent transparent transparent #fff;
}
#pinnar-v2 .lead .wrap ul {
  position: relative;
  z-index: 9;
  margin-top: 69px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  background-color: rgba(255, 255, 255, 0.22);
  display: flex;
  justify-content: space-between;
}
#pinnar-v2 .lead .wrap ul li {
  padding: 10px 0;
}
#pinnar-v2 .lead .wrap ul li {
  width: 100%;
}
#pinnar-v2 .lead .wrap ul li a {
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  display: flex;
  padding: 0 0 16px;
  border-left: 1px solid #fff;
  position: relative;
  text-align: center;
  height: 100%;
  flex-direction: column;
  justify-content: center;
}
#pinnar-v2 .lead .wrap ul li:first-child a {
  border-left: none;
}
#pinnar-v2 .lead .wrap ul li a:after {
  content: "";
  width: 0;
  display: block;
  margin: 0 auto;
  height: 0;
  border-style: solid;
  border-width: 12px 7.5px 0 7.5px;
  border-color: #ffffff transparent transparent transparent;
  position: absolute;
  bottom: 0;
  left: calc(50% - 6px);
}

/* --------------------
	pinnar-features
 -------------------- */
#pinnar-features {
  position: relative;
  min-width: 1320px;
}
#pinnar-features:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 156px;
  background: url("../img_hc/service/pinnar_bottom_purple_bg.png") top center
    no-repeat;
  background-size: 100% 156px;
}
#pinnar-features .wrap {
  position: relative;
  padding-bottom: 150px;
}
#pinnar-features .wrap h1 {
  color: #48b3f8;
  font-size: 48px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}
#pinnar-features .wrap h1 b {
  font-size: 80px;
}
#pinnar-features .wrap h1 span {
  display: block;
  font-size: 16px;
  color: #9b9b9b;
}
#pinnar-features .wrap section {
  text-align: center;
  border-top: 1px solid #60c1ff;
  padding: 80px 0;
}
#pinnar-features .wrap section:first-of-type {
  border-top: none;
  padding-top: 10px;
}
#pinnar-features .wrap section h2 {
  font-size: 48px;
  font-weight: bold;
  color: #005bac;
  background-color: rgba(72, 179, 248, 0.2);
  display: inline-block;
  padding: 0 114px 0 72px;
  line-height: 1.5;
  position: relative;
  margin-bottom: 38px;
  position: relative;
}
#pinnar-features .wrap section h2:after {
  content: "";
  position: absolute;
  top: 0;
  right: -38px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 38px 72px 38px;
  border-color: transparent transparent #ffffff transparent;
}
#pinnar-features .wrap section h2 span {
  color: #fff;
  background-color: #48b3f8;
  font-size: 60px;
  border-radius: 50%;
  position: absolute;
  width: 100px;
  height: 100px;
  top: -15px;
  left: -50px;
}
#pinnar-features .wrap section p {
  font-size: 16px;
  color: #707070;
}
#pinnar-features .wrap section.part1 dl {
  border: 3px solid #ff7e82;
  width: 700px;
  margin: 50px auto 59px;
}
#pinnar-features .wrap section.part1 dl dt {
  width: 370px;
  margin: -27px auto 0;
}
#pinnar-features .wrap section.part1 dl dd {
  padding: 20px 0 22px;
}

#pinnar-features .wrap section.part1 dl dd .lead {
  font-size: 56px;
  margin-bottom: 20px;
  font-weight: bold;
  color: #ff7e82;
  line-height: 1.3;
}
#pinnar-features .wrap section.part1 dl dd .new {
  font-size: 62px;
  font-weight: bold;
  color: #ff7e82;
  position: relative;
  display: inline-block;
  line-height: 1.19;
}
#pinnar-features .wrap section.part1 dl dd .new span {
  font-size: 28px;
  color: #ff4646;
  vertical-align: 0.5em;
}
#pinnar-features .wrap section.part1 dl dd .caution {
  text-align: left;
  padding-left: 132px;
}
#pinnar-features .wrap section.part1 dl dd .new-function {
  display: inline-block;
  width: auto;
  margin-bottom: 20px;
}
#pinnar-features .wrap section.part1 dl dd .new-function li {
  color: #ff7e82;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.44;
  text-align: left;
  width: auto;
}
#pinnar-features .wrap section.part1 dl dd .note {
  color: #ff7e82;
  font-size: 20px;
  font-weight: bold;
  margin-top: 20px;
}
#pinnar-features .wrap section ul {
  display: flex;
  justify-content: space-around;
  width: 930px;
  margin: 0 auto;
}
#pinnar-features .wrap section ul li {
  position: relative;
  width: 300px;
}
#pinnar-features .wrap section ul li:first-child {
  order: 2;
}
#pinnar-features .wrap section ul li p {
  margin-bottom: 27px;
}
#pinnar-features .wrap section ul li p span {
  display: block;
  font-size: 12px;
}
#pinnar-features .wrap section ul li img {
  width: 230px;
}
#pinnar-features .wrap section ul li .icon {
  position: absolute;
  width: 80px;
  top: -26px;
  left: -40px;
}
#pinnar-features .wrap section ul li .movie-modal {
  cursor: pointer;
}
#pinnar-features .wrap section .lead-box {
  border: 3px solid #48b3f8;
  width: 700px;
  margin: 50px auto 59px;
  padding: 20px 0 40px;
}
#pinnar-features .wrap section .lead-box p {
  color: #48b3f8;
  font-weight: bold;
  font-size: 40px;
}
#pinnar-features .wrap section .lead-box p.lead {
  font-size: 48px;
}
#pinnar-features .wrap section.part3 > img {
  width: 932px;
  margin: 0 auto;
}

/* --------------------
	pinnar-functions
 -------------------- */
#pinnar-functions {
  background: linear-gradient(0deg, #13d4f1, #678cfe);
  min-width: 1320px;
  position: relative;
}
#pinnar-functions:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 156px;
  background: url("../img_hc/service/pinnar_bottom_white_bg.png") center top
    no-repeat;
  background-size: 100% 156px;
}
#pinnar-functions .wrap {
  position: relative;
  color: #fff;
  padding-bottom: 212px;
}
#pinnar-functions .wrap h1 {
  color: #fff;
  font-size: 48px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 60px;
}
#pinnar-functions .wrap h1 b {
  font-size: 80px;
}
#pinnar-functions .wrap h1 span {
  display: block;
  font-size: 16px;
  color: #fff;
}
#pinnar-functions .wrap .function {
  padding: 0 0 94px;
  min-height: 688px;
}
#pinnar-functions .wrap .function h2 {
  font-size: 48px;
  font-weight: bold;
  margin-bottom: 10px;
}
#pinnar-functions .wrap .function h2 b {
  font-size: 68px;
  padding-right: 31px;
}
#pinnar-functions .wrap .function .detail {
  width: 622px;
  margin-left: 500px;
  position: relative;
}
#pinnar-functions .wrap .function .detail p {
  font-weight: bold;
}
#pinnar-functions .wrap .function .detail .display-box {
  position: absolute;
  top: 12px;
  left: -305px;
}
#pinnar-functions .wrap .function .detail .display-box p {
  text-align: center;
  margin-bottom: 30px;
  font-weight: bold;
}
#pinnar-functions .wrap .function .display {
  width: 230px;
}
#pinnar-functions .wrap .part1 {
  border-bottom: 1px solid #fff;
}
#pinnar-functions .wrap .part1 .new {
  width: 396px;
}
#pinnar-functions .wrap .part1 ul {
  display: flex;
  margin-top: 100px;
  justify-content: space-between;
}
#pinnar-functions .wrap .part1 ul li {
  width: 108px;
}
#pinnar-functions .wrap .part1 ul li img {
  margin-bottom: 15px;
}
#pinnar-functions .wrap .part1 ul li p {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}
#pinnar-functions .wrap .part2 {
  padding-top: 80px;
  border-bottom: 1px solid #fff;
}
#pinnar-functions .wrap .part2 .detail {
  padding-top: 128px;
}
#pinnar-functions .wrap .part2 .detail h2 {
  margin-bottom: 40px;
}
#pinnar-functions .wrap .part2 .detail .icon {
  width: 164px;
  position: absolute;
  top: 110px;
  right: -56px;
}
#pinnar-functions .wrap .function.part3 {
  padding: 94px 0 12px;
  border-bottom: 1px solid #fff;
}
#pinnar-functions .wrap .function.part3 .detail {
  width: 924px;
  margin: 0 auto;
}
#pinnar-functions .wrap .function.part3 .detail h2 {
  margin-bottom: 63px;
}
#pinnar-functions .wrap .function.part3 .detail h2 .icon {
  width: 108px;
  margin: 17px 0 0 16px;
}
#pinnar-functions .wrap .function.part3 .detail .contents dl {
  margin-bottom: 79px;
}
#pinnar-functions .wrap .function.part3 .detail .contents dl dt {
  width: 809px;
  height: 132px;
  margin: 0 auto 55px;
  background: url("../img_hc/service/pinnar_video_copy.png") center center
    no-repeat;
}
#pinnar-functions .wrap .function.part3 .detail .contents dl dt img {
  display: none;
}
#pinnar-functions .wrap .function.part3 .detail .contents dl dd {
  font-weight: bold;
}
#pinnar-functions .wrap .function.part3 .detail .contents ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 65px;
}
#pinnar-functions .wrap .function.part3 .detail .contents ul li {
  width: 300px;
  text-align: center;
}
#pinnar-functions .wrap .function.part3 .detail .contents ul li p {
  margin-bottom: 24px;
}
#pinnar-functions .wrap .function.part3 .detail .contents ul li img {
  width: 230px;
}
#pinnar-functions .wrap .others {
  width: 998px;
  margin: 0 auto 68px;
  display: flex;
  justify-content: space-between;
}
#pinnar-functions .wrap .others > div {
  width: 300px;
  padding: 112px 0 0;
  position: relative;
}
#pinnar-functions .wrap .others > div h2 {
  text-align: center;
  margin-bottom: 20px;
}
#pinnar-functions .wrap .others > div h2 b {
  display: block;
  padding-right: 0;
}
#pinnar-functions .wrap .others > div .display {
  width: 230px;
  margin: 0 auto 30px;
  display: block;
}
#pinnar-functions .wrap .others > div .icon {
  width: 108px;
  display: block;
  margin: 0 auto 28px;
}
#pinnar-functions .wrap .others > div p {
  line-height: 1.375;
  font-weight: bold;
}
#pinnar-functions .wrap .more-pinnar {
  width: 458px;
  margin: 0 auto 68px;
  display: block;
}
#pinnar-functions .wrap .scene {
  width: 1142px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 20px;
  padding: 48px 26px 38px;
}
#pinnar-functions .wrap .scene h2 {
  color: #48b3f8;
  font-weight: bold;
  font-size: 48px;
  text-align: center;
  margin-bottom: 42px;
}
#pinnar-functions .wrap .scene h2 span {
  font-size: 16px;
  display: block;
}
#pinnar-functions .wrap .scene ul {
  display: flex;
  justify-content: center;
}
#pinnar-functions .wrap .scene ul li {
  width: 21.88em;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#pinnar-functions .wrap .scene ul li figure {
  width: 55.71%;
  padding-top: 55.71%;
  border-radius: 50%;
  margin-top: -27.86%;
  background-color: #fff;
  position: relative;
}
#pinnar-functions .wrap .scene ul li figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%);
  width: 43.08%;
}
#pinnar-functions .wrap .scene ul li p {
  color: #005bac;
  line-height: 1.59;
  text-align: center;
}

/* --------------------
	pinnar-get-position
 -------------------- */

#pinnar-get-position {
  position: relative;
  background-color: #fff;
  min-width: 1320px;
  border-bottom: 1px solid #9b9b9b;
}
#pinnar-get-position .wrap h1 {
  color: #48b3f8;
  font-size: 48px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
}
#pinnar-get-position .wrap h1 span {
  font-size: 36px;
  display: block;
  line-height: 1;
}
#pinnar-get-position .wrap h1 span img {
  width: 113px;
  display: inline-block;
  margin-left: 10px;
}
#pinnar-get-position .wrap > p {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.625;
  width: 1011px;
  margin: 0 auto 10px;
}
#pinnar-get-position .wrap > p.memo {
  font-size: 16px;
  font-weight: normal;
  line-height: 1.375;
  margin-bottom: 111px;
}
#pinnar-get-position .wrap > p.memo a {
  color: #005bac;
}
#pinnar-get-position .wrap .merit {
  margin: 0 auto;
  padding-bottom: 101px;
  border-bottom: 1px solid #707070;
}
#pinnar-get-position .wrap .merit > dt {
  color: #005bac;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 50px;
}
#pinnar-get-position .wrap .merit > dd {
  width: 996px;
  margin: 0 auto;
}
#pinnar-get-position .wrap .merit > dd > ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px;
}
#pinnar-get-position .wrap .merit > dd > ul li {
  width: 398px;
}
#pinnar-get-position .wrap .merit > dd > ul li div {
  background-color: #60c1ff;
  min-height: 400px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px 0 30px;
  margin: 0 0 25px 0;
}
#pinnar-get-position .wrap .merit dd ul li div .number {
  font-size: 80px;
  font-weight: bold;
  color: #005bac;
  text-align: center;
  line-height: 1;
}
#pinnar-get-position .wrap .merit dd ul li div .point {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
  text-align: center;
}
#pinnar-get-position .wrap .merit dd ul li div img {
  width: auto;
  height: 120px;
  display: block;
  margin: 0 auto;
}
#pinnar-get-position .wrap .merit dd ul li .detail {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.375;
}
#pinnar-get-position .wrap .merit dd .attention {
  width: 982px;
  margin: 0 auto;
  border: 3px solid #c9c9c9;
  border-radius: 21px;
  padding-bottom: 22px;
}
#pinnar-get-position .wrap .merit dd .attention dt {
  margin-top: -1.3em;
  text-align: center;
  margin-bottom: 22px;
}
#pinnar-get-position .wrap .merit dd .attention dt span {
  display: inline-block;
  background: #fff url("../img_hc/service/pinnar_attention_icon.png") center left
    no-repeat;
  background-size: 42px auto;
  padding: 0 10px 0 50px;
  font-size: 18px;
  font-weight: bold;
  line-height: 2.2;
}
#pinnar-get-position .wrap .merit dd .attention dd ul {
  display: flex;
  justify-content: center;
}
#pinnar-get-position .wrap .merit dd .attention dd ul li {
  color: #005bac;
  font-weight: bold;
  font-size: 20px;
  padding: 0 1em;
}
#pinnar-get-position .wrap .flow {
  padding: 71px 0 69px;
}
#pinnar-get-position .wrap .flow dt {
  font-size: 36px;
  font-weight: bold;
  color: #005bac;
  text-align: center;
  margin-bottom: 45px;
}
#pinnar-get-position .wrap .flow dd {
  width: 996px;
  margin: 0 auto;
  text-align: center;
}
#pinnar-get-position .wrap .flow dd > p {
  font-size: 16px;
  display: inline-block;
  background: url("../img_hc/service/pinnar_movieplay_icon.png") center left
    no-repeat;
  background-size: 40px auto;
  padding-left: 50px;
  line-height: 40px;
  margin-bottom: 28px;
}
#pinnar-get-position .wrap .flow dd > img {
  width: 230px;
  display: block;
  margin: 0 auto 60px;
  cursor: pointer;
}
#pinnar-get-position .wrap .flow dd ol {
  width: 996px;
  margin: 0 auto 80px;
  list-style: none;
  text-align: left;
}
#pinnar-get-position .wrap .flow dd ol li {
  margin-top: 80px;
}
#pinnar-get-position .wrap .flow dd ol li:first-child {
  margin-top: 0;
}
#pinnar-get-position .wrap .flow dd ol li .title {
  font-size: 24px;
  font-weight: bold;
  color: #005bac;
  margin-bottom: 15px;
}
#pinnar-get-position .wrap .flow dd ol li .detail {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.33;
}
#pinnar-get-position .wrap .flow dd ol li .memo {
  font-size: 16px;
  font-weight: normal;
  line-height: 1.375;
}
#pinnar-get-position .wrap .flow dd ol li .caution {
  font-size: 10px;
  font-weight: bold;
  text-align: right;
  width: 782px;
  margin: 18px auto 0;
}
#pinnar-get-position .wrap .flow dd ol li img {
  display: block;
  width: auto;
  margin: 60px auto 0;
}
#pinnar-get-position .wrap .flow dd .report {
  border: 2px solid #9b9b9b;
  border-radius: 31px;
  padding: 42px 44px 33px;
  margin-bottom: 74px;
}
#pinnar-get-position .wrap .flow dd .report p {
  font-size: 18px;
  font-weight: bold;
  color: #005bac;
  margin-bottom: 35px;
}
#pinnar-get-position .wrap .flow dd .report p.caution {
  font-size: 10px;
  color: #000;
  margin: 25px auto 0;
  text-align: right;
}
#pinnar-get-position .wrap .flow dd .report img {
  display: block;
}
#pinnar-get-position .wrap .flow dd .inquiry {
  display: block;
  margin: 0 auto;
  width: 630px;
  position: relative;
  background-color: #fff;
  color: #005bac;
  text-align: center;
  font-weight: bold;
  font-size: 32px;
  border-radius: 69px;
  padding: 40px 0;
  border: 4px solid #005bac;
}
#pinnar-get-position .wrap .flow dd .inquiry:hover {
  background-color: #ffb216;
  color: #fff;
  border: 4px solid #fff;
}
#pinnar-get-position .wrap .flow dd .inquiry:after {
  content: "";
  position: absolute;
  top: calc(50% - 14px);
  right: 79px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 0 14px 22px;
  border-color: transparent transparent transparent #005bac;
}
#pinnar-get-position .wrap .flow dd .inquiry:hover:after {
  border-color: transparent transparent transparent #fff;
}

/* --------------------
	pinnar-application
 -------------------- */

#pinnar-application {
  min-width: 1320px;
  padding-top: 100px;
}
#pinnar-application .wrap {
  padding-bottom: 84px;
}
#pinnar-application .wrap h1 {
  font-size: 48px;
  font-weight: bold;
  text-align: center;
  color: #48b3f8;
  margin-bottom: 60px;
}
#pinnar-application .wrap h1 span {
  font-size: 16px;
  color: #9b9b9b;
  display: block;
}
#pinnar-application .wrap .info-box {
  width: 780px;
  margin: 0 auto 80px;
  position: relative;
}
#pinnar-application .wrap .info-box .logo {
  width: 639px;
  display: block;
  margin-bottom: 30px;
}
#pinnar-application .wrap .info-box ul {
  overflow: hidden;
  padding-left: 73px;
}
#pinnar-application .wrap .info-box ul li {
  float: left;
  margin-right: 10px;
}
#pinnar-application .wrap .info-box ul li.apple {
  width: 156px;
}
#pinnar-application .wrap .info-box ul li.google {
  width: 170px;
}
#pinnar-application .wrap .info-box .free-icon {
  position: absolute;
  color: #fff;
  background-color: #ff4680;
  font-size: 28px;
  text-align: center;
  width: 122px;
  border-radius: 5px;
  top: 213px;
  right: 214px;
  height: 53px;
}
#pinnar-application .wrap .info-box .qr-code {
  position: absolute;
  width: 160px;
  top: 106px;
  right: 0;
}
#pinnar-application .wrap dl {
  width: 932px;
  margin: 0 auto;
}
#pinnar-application .wrap dl dt {
  color: #005bac;
}
#pinnar-application .wrap dl dd {
  color: #666666;
  line-height: 1.31;
  margin-bottom: 20px;
}

/* --------------------
  pinar-news
--------------------- */
#pinnar-news {
  min-width: 1320px;
  padding-top: 0px;
}
#pinnar-news .wrap {
  padding-bottom: 84px;
}
#pinnar-news .wrap .info-box {
  width: 600px;
  margin: 0 auto 40px;
}
#pinnar-news .wrap .info-box .logo {
  width: 100%;
  margin: auto;
}
#pinnar-news .wrap dl {
  width: 932px;
  margin: 0 auto;
}
#pinnar-news .wrap dl p {
  font-size: 16px;
  text-align: center;
  line-height: 300%;
  color: #707070;
}
#pinnar-news .wrap dl p .pc-only {
  display: block;
}
#pinnar-news .wrap dl p .sp-only {
  display: none;
}
/* --------------------
	pinnar-dl-banner
	pinnarbiz-dl-banner
	pinnarutility-dl-banner
 -------------------- */
#pinnar-dl-banner,
#pinnarbiz-dl-banner,
#pinnarutility-dl-banner {
  position: fixed;
  right: 0;
  bottom: 0;
  min-width: 401px;
  padding: 16px 32px 14px;
  border: 4px solid #48b3f8;
  background-color: rgba(255, 255, 255, 0.85);
  z-index: 9999;
  display: none;
}
#pinnar-dl-banner.show,
#pinnarbiz-dl-banner.show,
#pinnarutility-dl-banner.show {
  display: block;
}
#pinnar-dl-banner .close-btn,
#pinnarbiz-dl-banner .close-btn,
#pinnarutility-dl-banner .close-btn {
  position: absolute;
  width: 1.13em;
  height: 1.13em;
  cursor: pointer;
  top: 1.25em;
  right: 0.94em;
}
#pinnar-dl-banner .close-btn span,
#pinnarbiz-dl-banner .close-btn span,
#pinnarutility-dl-banner .close-btn span {
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #005bac;
  top: calc(50% - 1px);
  transform: rotate(45deg);
}
#pinnar-dl-banner .close-btn span + span,
#pinnarbiz-dl-banner .close-btn span + span,
#pinnarutility-dl-banner .close-btn span + span {
  transform: rotate(-45deg);
}
#pinnar-dl-banner > img,
#pinnarbiz-dl-banner > img,
#pinnarutility-dl-banner > img {
  width: 188px;
  display: block;
  margin-bottom: 8px;
}
#pinnar-dl-banner .qr,
#pinnarbiz-dl-banner .qr,
#pinnarutility-dl-banner .qr {
  width: 131px;
  height: 131px;
  background-color: #fff;
  position: absolute;
  top: 16px;
  right: 31px;
}
#pinnar-dl-banner .qr img,
#pinnarbiz-dl-banner .qr img,
#pinnarutility-dl-banner .qr img {
  width: 103px;
  display: block;
  margin: 12px auto;
}
#pinnar-dl-banner .download li,
#pinnarbiz-dl-banner .download li,
#pinnarutility-dl-banner .download li {
  margin-top: 10px;
}
#pinnar-dl-banner .download li:first-child,
#pinnarbiz-dl-banner .download li:first-child,
#pinnarutility-dl-banner .download li:first-child {
  margin-top: 0;
  width: 188px;
}
#pinnar-dl-banner .download li a,
#pinnarbiz-dl-banner .download li a,
#pinnarutility-dl-banner .download li a {
  background-color: #c7e4ff;
  color: #005bac;
  font-size: 16px;
  font-weight: bold;
  padding: 30px 13px;
  display: block;
  line-height: 1.1;
  position: relative;
}
#pinnar-dl-banner .download li a:before,
#pinnarbiz-dl-banner .download li a:before,
#pinnarutility-dl-banner .download li a:before,
#pinnar-dl-banner .download li a:after,
#pinnarbiz-dl-banner .download li a:after,
#pinnarutility-dl-banner .download li a:after {
  content: "";
  position: absolute;
  background-color: #005bac;
  width: 10px;
  height: 2px;
  top: calc(50% - 3px);
  right: 6px;
  transform: rotate(45deg);
}
#pinnar-dl-banner .download li a:after,
#pinnarbiz-dl-banner .download li a:after,
#pinnarutility-dl-banner .download li a:after {
  transform: rotate(-45deg);
  top: calc(50% + 3px);
}
#pinnar-v2 .screen-bg,
#pinnarutility .screen-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  justify-content: center;
  flex-direction: column;
}
#pinnar-v2 .screen-bg.on,
#pinnarutility .screen-bg.on {
  display: flex;
}
#pinnar-v2 .screen-bg .youtube-box,
#pinnarutility .screen-bg .youtube-box {
  display: none;
  margin: 0 auto;
  width: 800px;
  height: 450px;
}
#pinnar-v2 .screen-bg .youtube-box.on,
#pinnarutility .screen-bg .youtube-box.on {
  display: block;
}
#pinnar-v2 .screen-bg .youtube-box iframe,
#pinnarutility .screen-bg .youtube-box iframe {
  width: 100%;
  height: 100%;
}
#pinnar-v2 .screen-bg .close-btn,
#pinnarutility .screen-bg .close-btn {
  width: 2em;
  margin: 20px auto;
  color: #fff;
  border: 2px solid #fff;
  text-align: center;
  border-radius: 50%;
}

@media (max-width: 767px) {
  /* --------------------
		exist top area
	-------------------- */
  #pinnar-v2 .page__head {
    height: auto;
  }
  #pinnar-v2 .wrap {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    padding-bottom: 75px;
  }

  /* --------------------
		title-sec
	 -------------------- */
  #pinnar-v2 .title-sec {
    min-width: initial;
  }
  #pinnar-v2 .title-sec .wrap {
    background: url("../img_hc/service/pinnar_title_bg_sp.jpg") top center
      no-repeat;
    background-size: cover;
    overflow: visible;
    display: block;
    padding: 14px 0 13px;
  }
  #pinnar-v2 .title-sec .wrap .info-box {
    width: 86.13%;
    margin: 0 auto 16px;
  }
  #pinnar-v2 .title-sec .wrap .info-box h1 {
    margin-bottom: 0;
  }
  #pinnar-v2 .title-sec .wrap .info-box .free-icon {
    top: initial;
    bottom: 8px;
    right: 7.02%;
    width: 17.61%;
    height: auto;
    font-size: 12px;
  }
  #pinnar-v2 .title-sec .wrap .img-box {
    width: 52%;
    margin: 0 auto;
  }
  #pinnar-v2 .title-sec .wrap .img-box .using {
    width: 70.76%;
  }

  /* --------------------
		lead
	 -------------------- */
  #pinnar-v2 .lead {
    min-width: initial;
  }
  #pinnar-v2 .lead .wrap {
    padding: 20px 0 70px;
  }
  #pinnar-v2 .lead:after {
    height: 38px;
    background-size: 100% 38px;
  }
  #pinnar-v2 .lead .wrap p {
    font-size: 14px;
    width: 91.46%;
    margin: 0 auto;
  }
  #pinnar-v2 .lead .wrap p.lead-text {
    font-size: 24px;
    text-align: center;
    margin-bottom: 33px;
  }
  #pinnar-v2 .lead .wrap .inquiry {
    width: 91.46%;
    margin: 0 auto 30px;
  }
  #pinnar-v2 .lead .wrap ul {
    width: 91.46%;
    line-height: 1.78;
    margin: 38px auto 0;
    flex-wrap: wrap;
    display: block;
  }
  #pinnar-v2 .lead .wrap ul li {
    padding: 5px 0;
    width: 50%;
    border-bottom: 1px solid #fff;
  }
  #pinnar-v2 .lead .wrap ul li:first-child,
  #pinnar-v2 .lead .wrap ul li:nth-child(2),
  #pinnar-v2 .lead .wrap ul li:nth-child(3),
  #pinnar-v2 .lead .wrap ul li:nth-child(4),
  #pinnar-v2 .lead .wrap ul li:nth-child(5) {
    width: 100%;
  }
  #pinnar-v2 .lead .wrap ul li a {
    font-size: 16px;
    padding: 0;
    text-align: center;
    line-height: 1.375;
    min-height: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-left: none;
  }
  #pinnar-v2 .lead .wrap ul li a span {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #pinnar-v2 .lead .wrap ul li a span:after {
    content: "";
    display: inline-block;
    margin-left: 5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 7.5px 0 7.5px;
    border-color: #ffffff transparent transparent transparent;
  }
  #pinnar-v2 .lead .wrap ul li a:after {
    content: none;
  }

  /* --------------------
		pinnar-features
	 -------------------- */
  #pinnar-features {
    min-width: initial;
  }
  #pinnar-features .wrap {
    padding-bottom: 0;
  }
  #pinnar-features:after {
    height: 38px;
    background-size: 100% 38px;
  }
  #pinnar-features .wrap h1 {
    font-size: 22px;
    transform: initial;
  }
  #pinnar-features .wrap h1 b {
    font-size: 36px;
  }
  #pinnar-features .wrap h1 span {
    font-size: 8px;
  }
  #pinnar-features .wrap section {
    padding: 40px 0;
  }
  #pinnar-features .wrap section h2 {
    font-size: 20px;
    width: 91.46%;
    display: block;
    margin: 0 auto 24px;
    padding: 0 0 0 44px;
    border-left: 10px solid #fff;
    text-align: left;
  }
  #pinnar-features .wrap section h2 br.sp {
    display: none;
  }
  @media (max-width: 767px) {
    #pinnar-features .wrap section h2 br.sp {
      display: block;
    }
  }
  #pinnar-features .wrap section h2 span {
    font-size: 28px;
    width: 50px;
    height: 50px;
    top: calc(50% - 25px);
    left: -10px;
    text-align: center;
  }
  #pinnar-features .wrap section p {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.35;
    text-align: left;
    position: relative;
    width: 100%;
    margin: 0 auto 6px;
    padding:0em 2em;
  }
  #pinnar-features .wrap section.part1 dl {
    width: 91.46%;
    margin-bottom: 13px;
  }
  #pinnar-features .wrap section.part1 dl dt {
    width: 283px;
    margin-top: -23px;
  }
  #pinnar-features .wrap section.part1 dl dd {
    padding: 10px 0 14px;
  }
  #pinnar-features .wrap section.part1 dl dd p {
    font-size: 10px;
    width: 100%;
    text-align: center;
    margin: 14px 0 0;
  }
  #pinnar-features .wrap section.part1 dl dd .lead {
    font-size: 26px;
    margin: 0 0 10px;
  }
  #pinnar-features .wrap section.part1 dl dd .new {
    font-size: 34px;
    width: auto;
    margin: 0;
  }
  #pinnar-features .wrap section.part1 dl dd .new span {
    font-size: 14px;
    top: calc(50% - 7px);
  }
  #pinnar-features .wrap section.part1 dl dd .caution {
    padding-left: 18px;
    margin: 5px 0;
  }
  #pinnar-features .wrap section.part1 dl dd .new-function {
    padding: 0 0 0 30px;
    margin-bottom: 0;
  }
  #pinnar-features .wrap section.part1 dl dd .new-function li {
    font-size: 20px;
  }
  #pinnar-features .wrap section.part1 dl dd .note {
    font-size: 16px;
    margin-top: 5px;
  }
  #pinnar-features .wrap section ul {
    width: 100%;
    justify-content: space-around;
    flex-wrap: wrap;
  }
  #pinnar-features .wrap section ul li {
    width: 156px;
  }
  #pinnar-features .wrap section ul li:first-child {
    order: initial;
    width: 91.46%;
  }
  #pinnar-features .wrap section ul li:first-child img:not(.icon) {
    width: 204px;
  }
  #pinnar-features .wrap section ul li p {
    text-align: center;
    font-weight: normal;
    padding-top: 20px;
    margin-bottom: 20px;
  }
  #pinnar-features .wrap section ul li p span {
    font-size: 10px;
  }
  #pinnar-features .wrap section ul li .icon {
    width: 70px;
    top: 0;
    left: 0;
  }
  #pinnar-features .wrap section .lead-box {
    width: 91.46%;
    margin: 30px auto 16px;
    padding: 11px 0;
  }
  #pinnar-features .wrap section .lead-box p {
    font-size: 20px;
    width: 100%;
    margin: 0;
    text-align: center;
  }
  #pinnar-features .wrap section .lead-box p.lead {
    font-size: 30px;
    margin-bottom: 11px;
  }
  #pinnar-features .wrap section.part3 > img {
    width: 91.46%;
    display: block;
  }

  /* --------------------
		pinnar-functions
	 -------------------- */
  #pinnar-functions {
    min-width: initial;
  }
  #pinnar-functions:after {
    height: 38px;
    background-size: 100% 38px;
  }
  #pinnar-functions .wrap h1 {
    font-size: 22px;
    transform: initial;
    margin-bottom: 40px;
  }
  #pinnar-functions .wrap h1 b {
    font-size: 36px;
  }
  #pinnar-functions .wrap h1 span {
    font-size: 8px;
  }
  #pinnar-functions .wrap .function {
    min-height: initial;
    padding-bottom: 23px;
  }
  #pinnar-functions .wrap .function h2 {
    font-size: 20px;
    padding-left: 12.53%;
  }
  #pinnar-functions .wrap .function h2 b {
    font-size: 29px;
    padding-right: 31px;
  }
  #pinnar-functions .wrap .function .detail {
    width: 91.46%;
    margin: 0 auto;
  }
  #pinnar-functions .wrap .function .detail .display-box {
    position: relative;
    top: initial;
    left: initial;
    margin-bottom: 23px;
  }
  #pinnar-functions .wrap .function .display {
    width: 158px;
    margin: 0 auto;
    display: block;
  }
  #pinnar-functions .wrap .function .detail p {
    font-size: 14px;
    line-height: 1.357;
  }
  #pinnar-functions .wrap .part1 .new {
    width: 238px;
    margin: 0 auto;
    display: block;
  }
  #pinnar-functions .wrap .part1 ul {
    margin-top: 33px;
    margin: 33px auto 0;
  }
  #pinnar-functions .wrap .part1 ul li {
    width: 19.41%;
  }
  #pinnar-functions .wrap .part2 {
    padding-top: 0;
  }
  #pinnar-functions .wrap .part2 .detail {
    padding-top: 37px;
  }
  #pinnar-functions .wrap .part2 .detail h2 {
    margin-bottom: 10px;
  }
  #pinnar-functions .wrap .part2 .detail .icon {
    width: 82px;
    top: 11px;
    right: 0;
  }
  #pinnar-functions .wrap .function.part3 {
    padding: 37px 0 6px;
  }
  #pinnar-functions .wrap .function.part3 .detail {
    width: 100%;
    text-align: center;
  }
  #pinnar-functions .wrap .function.part3 .detail h2 {
    text-align: center;
    position: relative;
    display: inline-block;
    padding: 0;
    margin-left: calc(-2em - 31px);
    margin-bottom: 30px;
  }
  #pinnar-functions .wrap .function.part3 .detail h2 b {
    margin-left: 0;
  }
  #pinnar-functions .wrap .function.part3 .detail h2 .icon {
    width: 65px;
    position: absolute;
    top: -20px;
    right: -110px;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents dl {
    margin: 0 auto 25px;
    width: 91.46%;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents dl dt {
    background: none;
    margin-bottom: 20px;
    width: auto;
    height: auto;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents dl dt img {
    display: block;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents dl dd {
    text-align: left;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents {
    display: flex;
    flex-direction: column-reverse;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents ul {
    flex-wrap: wrap;
    margin-bottom: 0;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents ul li {
    width: 50%;
    margin-bottom: 25px;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents ul li img {
    width: 156px;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents ul li:first-child {
    width: 100%;
  }
  #pinnar-functions
    .wrap
    .function.part3
    .detail
    .contents
    ul
    li:first-child
    img {
    width: 204px;
  }
  #pinnar-functions .wrap .function.part3 .detail .contents ul li p {
    font-weight: normal;
    font-size: 14px;
    margin-bottom: 20px;
  }
  #pinnar-functions .wrap .others {
    display: block;
    width: 100%;
    margin: 0 auto 10px;
  }
  #pinnar-functions .wrap .others > div {
    width: 100%;
    padding: 33px 0 20px;
    border-top: 1px solid #fff;
    position: relative;
    text-align: center;
  }
  #pinnar-functions .wrap .others > div:first-child {
    border-top: none;
  }
  #pinnar-functions .wrap .others > div h2 {
    padding-left: 0;
    width: 80%;
    margin: 0 auto 15px;
    position: relative;
  }
  #pinnar-functions .wrap .others > div h2 b {
    margin-left: -2em;
    margin-right: 30px;
    vertical-align: -0.2em;
    display: inline-block;
  }
  #pinnar-functions .wrap .others > div.part6 h2 b {
    margin-left: -3em;
    margin-right: 50px;
  }
  #pinnar-functions .wrap .others > div h2 span {
    min-width: 158px;
    margin-right: 59px;
  }
  #pinnar-functions .wrap .others > div h2 img {
    width: 66px;
    position: absolute;
    top: -8px;
    right: 0;
  }
  #pinnar-functions .wrap .others > div .display {
    width: 158px;
  }
  #pinnar-functions .wrap .others > div .icon {
    width: 66px;
    position: absolute;
    top: 18px;
    right: 43px;
  }
  #pinnar-functions .wrap .others > div p {
    width: 91.46%;
    margin: 0 auto;
    font-weight: bold;
    text-align: left;
  }
  #pinnar-functions .wrap .more-pinnar {
    width: 232px;
    margin: 0 auto 30px;
  }
  #pinnar-functions .wrap .scene {
    width: 91.46%;
    margin: 0 auto;
    padding: 23px 15px;
  }
  #pinnar-functions .wrap .scene h2 {
    font-size: 22px;
    margin-bottom: 25px;
  }
  #pinnar-functions .wrap .scene h2 span {
    font-size: 8px;
  }
  #pinnar-functions .wrap .scene ul {
    flex-direction: column;
  }
  #pinnar-functions .wrap .scene ul li {
    width: auto;
  }
  #pinnar-functions .wrap .scene ul li figure {
    height: 50vw;
    width: 50vw;
    padding-top: 0;
    margin-top: 0;
  }
  #pinnar-functions .wrap .scene ul li p {
    margin-top: -2.06em;
    position: relative;
  }

  /* --------------------
		pinnar-get-position
	 -------------------- */
  #pinnar-get-position {
    min-width: initial;
  }
  #pinnar-get-position .wrap {
    padding-bottom: 40px;
  }
  #pinnar-get-position:after {
    height: 38px;
    background-size: 100% 38px;
  }
  #pinnar-get-position .wrap h1 {
    font-size: 20px;
    margin-bottom: 16px;
    line-height: 1.2;
  }
  #pinnar-get-position .wrap h1 span {
    font-size: 18px;
    line-height: 1.2;
    margin-bottom: 16px;
  }
  #pinnar-get-position .wrap h1 span img {
    width: 84px;
    margin-left: 5px;
  }
  #pinnar-get-position .wrap > p {
    font-size: 14px;
    line-height: 1.357;
    width: 91.46%;
    margin: 0 auto 8px;
  }
  #pinnar-get-position .wrap > p.memo {
    font-size: 12px;
    line-height: 1.333;
    margin-bottom: 37px;
  }
  #pinnar-get-position .wrap .merit {
    padding-bottom: 30px;
  }
  #pinnar-get-position .wrap .merit > dt {
    font-size: 20px;
    line-height: 1.35;
    margin-bottom: 7px;
  }
  #pinnar-get-position .wrap .merit > dd {
    width: 91.46%;
  }
  #pinnar-get-position .wrap .merit > dd > ul {
    display: block;
    margin-bottom: 20px;
  }
  #pinnar-get-position .wrap .merit > dd > ul li {
    counter-increment: number;
    width: 100%;
  }
  #pinnar-get-position .wrap .merit > dd > ul li div {
    background-color: #fff;
    min-height: initial;
    display: block;
    padding: 0;
    margin: 0 0 30px 0;
  }
  #pinnar-get-position .wrap .merit dd ul li div .number {
    display: none;
  }
  #pinnar-get-position .wrap .merit dd ul li div .point {
    font-size: 14px;
    line-height: 1.357;
    background-color: #60c1ff;
    text-align: left;
    padding: 5px;
    margin-bottom: 11px;
  }
  #pinnar-get-position .wrap .merit dd ul li div .point:before {
    content: "0" counter(number);
    color: #005bac;
    font-size: 18px;
    font-weight: bold;
    margin-rigt: 10px;
  }
  #pinnar-get-position .wrap .merit dd ul li .detail {
    font-size: 14px;
    margin-bottom: 21px;
  }
  #pinnar-get-position .wrap .merit dd .attention {
    width: 91.46%;
    border-radius: 12px;
    padding-bottom: 10px;
  }
  #pinnar-get-position .wrap .merit dd .attention dt {
    margin-bottom: 7px;
  }
  #pinnar-get-position .wrap .merit dd .attention dt span {
    background-size: 27px auto;
    padding: 0 5px 0 30px;
    font-size: 10px;
    line-height: 2.5;
  }
  #pinnar-get-position .wrap .merit dd .attention dd {
    text-align: center;
  }
  #pinnar-get-position .wrap .merit dd .attention dd ul {
    display: inline-block;
    text-align: left;
  }
  #pinnar-get-position .wrap .merit dd .attention dd ul li {
    font-size: 12px;
    padding: 0;
  }
  #pinnar-get-position .wrap .flow {
    padding: 37px 0 0;
  }
  #pinnar-get-position .wrap .flow dt {
    font-size: 20px;
    margin-bottom: 7px;
  }
  #pinnar-get-position .wrap .flow dd {
    width: 91.46%;
  }
  #pinnar-get-position .wrap .flow dd > p {
    font-size: 10px;
    background-size: 20px auto;
    padding-left: 30px;
    line-height: 20px;
    margin-bottom: 11px;
  }
  #pinnar-get-position .wrap .flow dd > img {
    width: 204px;
    margin: 0 auto 50px;
  }
  #pinnar-get-position .wrap .flow dd ol {
    width: 91.46%;
    margin: 0 auto 40px;
  }
  #pinnar-get-position .wrap .flow dd ol li {
    margin-top: 40px;
  }
  #pinnar-get-position .wrap .flow dd ol li .title {
    font-size: 18px;
    margin-bottom: 10px;
  }
  #pinnar-get-position .wrap .flow dd ol li .detail {
    font-size: 16px;
    line-height: 1.375;
  }
  #pinnar-get-position .wrap .flow dd ol li .memo {
    font-size: 12px;
    line-height: 1.333;
    margin-top: 5px;
  }
  #pinnar-get-position .wrap .flow dd ol li .caution {
    font-size: 8px;
    width: auto;
    margin: 10px auto 0;
  }
  #pinnar-get-position .wrap .flow dd ol li img {
    margin: 10px auto 0;
  }
  #pinnar-get-position .wrap .flow dd .report {
    border-radius: 15px;
    padding: 14px 20px 27px;
    margin-bottom: 40px;
  }
  #pinnar-get-position .wrap .flow dd .report p {
    margin-bottom: 14px;
  }
  #pinnar-get-position .wrap .flow dd .report p.caution {
    font-size: 8px;
    margin: 5px auto 0;
  }
  #pinnar-get-position .wrap .flow dd .inquiry {
    width: 343px;
    font-size: 24px;
    border-radius: 50px;
    padding: 23px 0;
  }
  #pinnar-get-position .wrap .flow dd .inquiry:after {
    top: calc(50% - 6px);
    right: 40px;
    border-width: 6.5px 0 6.5px 10px;
  }

  /* --------------------
		pinnar-task
	 -------------------- */
  #pinnar-task {
    min-width: initial;
  }
  #pinnar-task:after {
    height: 38px;
    background-size: 100% 38px;
  }
  #pinnar-task .wrap p {
    font-size: 30px;
    margin-bottom: 20px;
  }
  #pinnar-task .wrap {
    padding-bottom: 0;
  }
  #pinnar-task .wrap img {
    width: 91.46%;
  }

  /* --------------------
		pinnar-case
	 -------------------- */
  #pinnar-case {
    min-width: initial;
  }
  #pinnar-case:after {
    height: 38px;
    background-size: 100% 38px;
  }
  #pinnar-case .wrap h1 {
    font-size: 22px;
  }
  #pinnar-case .wrap h1 span {
    font-size: 8px;
  }
  #pinnar-case .wrap > p.lead {
    width: 91.46%;
    font-size: 18px;
    text-align: left;
    padding: 10px;
    line-height: 1.38;
  }
  #pinnar-case .wrap > p.about {
    font-size: 16px;
    text-align: left;
    width: 91.46%;
    margin: 0 auto 20px;
  }
  #pinnar-case .wrap dl {
    width: 91.46%;
    margin: 0 auto 20px;
  }
  #pinnar-case .wrap dl dt {
    font-size: 18px;
    padding: 13px 0;
  }
  #pinnar-case .wrap dl dd {
    padding: 20px 10px;
  }
  #pinnar-case .wrap dl dd .merit-box,
  #pinnar-case .wrap dl.case2 dd .install-box {
    border-bottom: 1px solid #f27e1d;
    padding-bottom: 10px;
    margin-bottom: 20px;
  }
  #pinnar-case .wrap dl dd p {
    font-size: 18px;
    margin-bottom: 8px;
  }
  #pinnar-case .wrap dl dd p span {
    font-size: 14px;
  }
  #pinnar-case .wrap dl dd .lead {
    font-size: 22px;
    margin-bottom: 20px;
    line-height: 1.27;
  }
  #pinnar-case .wrap dl.case1 dd .merit.sp p {
    margin: 20px 0 15px;
  }
  #pinnar-case .wrap dl dd img {
    margin-bottom: 0;
  }
  #pinnar-case .wrap dl.case2 dd {
    padding: 20px 10px;
  }
  #pinnar-case .wrap dl.case2 dd .install-box .sp.install {
    padding-top: 12px;
  }
  #pinnar-case .wrap dl.case2 dd .install-box .sp.install p {
    color: #f27e1d;
  }
  #pinnar-case .wrap dl.case2 dd .install-box .sp.install .sub-title {
    width: 209px;
    margin: 0 auto 20px;
  }
  #pinnar-case .wrap dl.case2 dd .install-box .sp.install .full {
    width: 158px;
    margin: 0 auto 20px;
  }
  #pinnar-case .wrap dl.case2 ul {
    justify-content: space-between;
  }
  #pinnar-case .wrap dl.case2 ul li {
    width: 48.29%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  #pinnar-case .wrap .bottom-msg {
    font-size: 16px;
    margin: 43px auto 10px;
  }
  #pinnar-case .wrap .note {
    font-size: 14px;
    margin-bottom: 38px;
  }
  #pinnar-case .wrap .inquiry {
    width: 343px;
    font-size: 24px;
    border-radius: 50px;
    padding: 23px 0;
  }
  #pinnar-case .wrap .inquiry:after {
    top: calc(50% - 6px);
    right: 40px;
    border-width: 6.5px 0 6.5px 10px;
  }

  /* --------------------
		pinnar-application
	 -------------------- */
  #pinnar-application {
    min-width: initial;
    padding-top: 30px;
  }
  #pinnar-application .wrap {
    padding-top: 18px;
    padding-bottom: 10px;
  }
  #pinnar-application .wrap h1 {
    font-size: 22px;
    margin-bottom: 31px;
  }
  #pinnar-application .wrap h1 span {
    font-size: 8px;
  }
  #pinnar-application .wrap .info-box {
    width: 297px;
    margin: 0 auto 56px;
  }
  #pinnar-application .wrap .info-box .logo {
    width: 100%;
    margin-bottom: 17px;
  }
  #pinnar-application .wrap .info-box ul {
    padding-left: 33px;
  }
  #pinnar-application .wrap .info-box ul li.apple {
    width: 76px;
  }
  #pinnar-application .wrap .info-box ul li.google {
    width: 83px;
  }
  #pinnar-application .wrap .info-box .free-icon {
    font-size: 13px;
    width: 59px;
    top: initial;
    right: 26px;
    bottom: 0;
    border-radius: 5px;
    height: 26px;
  }
  #pinnar-application .wrap .info-box .qr-code {
    display: none;
  }
  #pinnar-application .wrap dl {
    width: 91.46%;
  }

  /* --------------------
		pinnar-news
	 -------------------- */
   #pinnar-news {
    min-width: initial;
  }
  #pinnar-news .wrap {
    padding-bottom: 30px;
  }
  #pinnar-news .wrap .info-box {
    width: 297px;
    margin: 0 auto 0;
  }
  #pinnar-news .wrap .info-box .logo {
    width: 100%;
    margin: auto;
  }
  #pinnar-news .wrap dl {
    width: 91.46%;
  }
  #pinnar-news .wrap dl p {
    font-size: 11.8px;
    text-align: center;
    line-height: 300%;
    color: #707070;
  }
  #pinnar-news .wrap dl p .pc-only {
    display: none;
  }
  #pinnar-news .wrap dl p .sp-only {
    display: block;
  }

  /* --------------------
		pinnar-dl-banner
		pinnarbiz-dl-banner
	 -------------------- */
  #pinnar-dl-banner,
  #pinnarbiz-dl-banner {
    min-width: initial;
    width: 100%;
    padding: 16px 66px 19px 30px;
  }
  #pinnar-dl-banner > img,
  #pinnarbiz-dl-banner > img {
    width: 269px;
    margin-bottom: 12px;
  }
  #pinnar-dl-banner .download li:first-child,
  #pinnarbiz-dl-banner .download li:first-child {
    margin-top: 0;
    width: auto;
  }
  #pinnar-dl-banner .download li a,
  #pinnarbiz-dl-banner .download li a {
    font-size: 13px;
    padding: 11px;
  }
  #pinnar-dl-banner .download li a:before,
  #pinnarbiz-dl-banner .download li a:before,
  #pinnar-dl-banner .download li a:after,
  #pinnarbiz-dl-banner .download li a:after {
    right: 8px;
    width: 8px;
    top: calc(50% - 2px);
  }
  #pinnar-dl-banner .download li a:after,
  #pinnarbiz-dl-banner .download li a:after {
    top: calc(50% + 2px);
  }

  #pinnar-v2 .screen-bg .youtube-box,
  #pinnarutility .screen-bg .youtube-box {
    position: relative;
    width: 90%;
    height: initial;
    padding-bottom: 50.625%;
  }
  #pinnar-v2 .screen-bg .youtube-box iframe,
  #pinnarutility .screen-bg .youtube-box iframe {
    position: absolute;
    top: 0;
    left: 0;
  }
}

/* digiad2 expand */

/* --------------------
	exist top area
 -------------------- */

#digital-ad .fixed__header {
  z-index: 1000;
}
#digital-ad .page__head {
  padding-top: 0;
  height: 2em;
}
#digital-ad .page__heading,
#digital-ad .page__head .page__lead-logo {
  display: none;
}

#digital-ad .wrap {
  width: 100%;
  max-width: 1310px;
  margin: 0 auto;
}

/* --------------------
	title sec
 -------------------- */
#digital-ad .title-sec {
  background: url("../img_hc/service/digiad_title_bg.png") center center no-repeat;
  background-size: cover;
  min-height: 870px;
  margin-top: 2em;
}
#digital-ad .title-sec .wrap {
  overflow: hidden;
  padding-top: 85px;
}
#digital-ad .title-sec .wrap .text-box {
  float: left;
  text-align: center;
  margin: 128px 3.66% 0 10.53%;
  width: 33.18%;
}
#digital-ad .title-sec .wrap .text-box h1 {
  font-size: 64px;
  font-weight: bold;
  color: #005bac;
  margin-bottom: 92px;
}
@media (max-width: 1220px) {
  #digital-ad .title-sec .wrap .text-box h1 {
    font-size: 52px;
  }
}
#digital-ad .title-sec .wrap .text-box p {
  font-size: 42px;
  font-weight: bold;
  color: #005bac;
  line-height: 1.26;
  margin-bottom: 26px;
}
@media (max-width: 1220px) {
  #digital-ad .title-sec .wrap .text-box p {
    font-size: 32px;
  }
}
#digital-ad .title-sec .wrap .text-box p b {
  font-size: 80px;
}
#digital-ad .title-sec .wrap .text-box a.inquiry {
  display: block;
}
#digital-ad .title-sec .wrap .text-box a.inquiry:hover img {
  opacity: 0;
}
#digital-ad .title-sec .wrap .text-box a.inquiry:hover {
  background: url("../img_hc/service/digiad_inquiry01_hover.png") center center
    no-repeat;
  background-size: cover;
}
#digital-ad .title-sec .wrap .circle-box {
  float: right;
  width: 47.97%;
  position: relative;
  margin-right: 4.6%;
}
#digital-ad .title-sec .wrap ul li {
  position: absolute;
}
#digital-ad .title-sec .wrap ul li a {
  position: absolute;
  color: #005bac;
  background-color: #fff;
  font-size: 17px;
  font-weight: bold;
  border-radius: 19px;
  bottom: 18%;
  padding: 2px 0;
  text-align: center;
}
#digital-ad .title-sec .wrap ul li:first-child a {
  width: 25.26%;
  bottom: 23%;
  left: calc(50% - 25.26% / 2);
}
#digital-ad .title-sec .wrap ul li:nth-child(2) a {
  width: 29.09%;
  left: calc(50% - 29.09% / 2);
}
#digital-ad .title-sec .wrap ul li:nth-child(3) a {
  width: 32%;
  left: calc(50% - 32% / 2);
}
#digital-ad .title-sec .wrap ul li a:hover {
  background-color: #feffe2;
}
#digital-ad .title-sec .wrap ul li a:after {
  content: "";
  position: absolute;
  top: calc(50% - 5px);
  right: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #005bac;
}
#digital-ad .title-sec .wrap ul li:first-child {
  width: 60.47%;
  top: 0;
  left: 0;
}
#digital-ad .title-sec .wrap ul li:nth-child(2) {
  width: 52.51%;
  top: 21%;
  right: 0;
}
#digital-ad .title-sec .wrap ul li:nth-child(3) {
  width: 47.74%;
  top: 49.5%;
  right: 35%;
}

/* --------------------
	digi-ad-ts-ads
 -------------------- */
#digi-ad-ts-ads {
  padding: 80px 0;
  border-bottom: 2px solid #9b9b9b;
}
#digi-ad-ts-ads .wrap {
  text-align: center;
}
#digi-ad-ts-ads h2 {
  text-align: center;
  font-size: 50px;
  font-weight: bold;
  background: url("../img_hc/service/digiad_tsads_icon.png") left bottom no-repeat;
  background-size: 158px 158px;
  padding-bottom: 40px;
  display: inline-block;
  padding-left: 158px;
}
#digi-ad-ts-ads h2 span {
  font-size: 30px;
  color: #005bac;
  display: block;
  transform: translateX(-79px);
  margin-bottom: 20px;
}
#digi-ad-ts-ads p {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 60px;
}
#digi-ad-ts-ads .flow.pc {
  width: 78.47%;
  margin: 0 auto;
  display: block;
}

/* --------------------
	digi-ad-ts-ads-feature
 -------------------- */
#digi-ad-ts-ads-feature {
  padding: 80px 0 100px;
}
#digi-ad-ts-ads-feature dl dt {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  color: #005bac;
  margin-bottom: 80px;
}
#digi-ad-ts-ads-feature dl dd {
  width: 78.47%;
  margin: 0 auto;
}
#digi-ad-ts-ads-feature dl dd ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#digi-ad-ts-ads-feature dl dd ul li {
  background-color: #e5eef7;
  border-radius: 20px;
  width: 49.22%;
  margin-bottom: 18px;
  text-align: center;
  padding-bottom: 30px;
}
#digi-ad-ts-ads-feature dl dd ul li .number {
  font-size: 68px;
  font-weight: bold;
  color: #005bac;
}
#digi-ad-ts-ads-feature dl dd ul li .title {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.571;
  margin-bottom: 35px;
}
#digi-ad-ts-ads-feature dl dd ul li .title span {
  color: #005bac;
}
#digi-ad-ts-ads-feature dl dd ul li .detail {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  width: 71.93%;
  margin: 0 auto;
  text-align: left;
}
#digi-ad-ts-ads-feature dl dd ul li a {
  display: block;
  width: 35.17%;
  background-color: #005bac;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  text-align: left;
  margin: 20px auto 0;
  position: relative;
  padding: 0 15px;
}
#digi-ad-ts-ads-feature dl dd ul li a:after {
  content: "";
  position: absolute;
  top: calc(50% - 7px);
  right: 6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 12px;
  border-color: transparent transparent transparent #fff;
}
#digi-ad-ts-ads-feature .wrap > img {
  display: block;
  width: 78.47%;
  margin: 30px auto 100px;
}
#digi-ad-ts-ads-feature .wrap .inquiry,
#digi-ad-app-ad-feature .wrap .inquiry,
#digi-ad-flow .wrap .inquiry,
#digi-ad-inquiry .wrap .inquiry {
  width: 48.09%;
  margin: 0 auto;
  display: block;
}
#digi-ad-ts-ads-feature .wrap .inquiry:hover img,
#digi-ad-app-ad-feature .wrap .inquiry:hover img,
#digi-ad-flow .wrap .inquiry:hover img,
#digi-ad-inquiry .wrap .inquiry:hover img {
  opacity: 0;
}
#digi-ad-ts-ads-feature .wrap .inquiry:hover,
#digi-ad-app-ad-feature .wrap .inquiry:hover,
#digi-ad-flow .wrap .inquiry:hover,
#digi-ad-inquiry .wrap .inquiry:hover {
  background: url("../img_hc/service/digiad_inquiry02_hover.png") center center
    no-repeat;
  background-size: cover;
}

/* --------------------
	digi-ad-app-ad
 -------------------- */
#digi-ad-app-ad {
  background-color: #f1f4ff;
  padding: 80px 0 100px;
  border-bottom: 2px solid #fff;
}
#digi-ad-app-ad .wrap {
  text-align: center;
}
#digi-ad-app-ad h2 {
  text-align: center;
  font-size: 50px;
  font-weight: bold;
  background: url("../img_hc/service/digiad_appad_icon.png") left bottom no-repeat;
  background-size: 158px 158px;
  padding-bottom: 40px;
  display: inline-block;
  padding-left: 158px;
}
#digi-ad-app-ad h2 span {
  font-size: 30px;
  color: #6b8aff;
  display: block;
  margin-bottom: 30px;
  transform: translateX(-79px);
}
#digi-ad-app-ad p {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 60px;
}
#digi-ad-app-ad .banner-img {
  display: flex;
  width: 43.96%;
  margin: 0 auto 80px;
  justify-content: space-between;
}
#digi-ad-app-ad .banner-img li {
  width: 39.93%;
}
#digi-ad-app-ad .banner-img li dl dt {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: #6b8aff;
  border-radius: 10px;
  margin-bottom: 30px;
  padding: 5px 0;
}
#digi-ad-app-ad .banner-img li dl dd {
  position: relative;
}
#digi-ad-app-ad .banner-img li dl dd .pc {
  position: absolute;
  width: 37.39%;
}
#digi-ad-app-ad .banner-img li:first-child dl dd .pc {
  left: -37.39%;
  bottom: 0;
}
#digi-ad-app-ad .banner-img li:nth-child(2) dl dd .pc {
  right: -37.39%;
  top: 43%;
}
#digi-ad-app-ad .banner {
  width: 65.19%;
  margin: 0 auto;
  display: block;
}

/* --------------------
	digi-ad-app-ad-feature
 -------------------- */
#digi-ad-app-ad-feature {
  background-color: #f1f4ff;
  padding: 80px 0 100px;
}
#digi-ad-app-ad-feature dl dt {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  color: #6b8aff;
  margin-bottom: 80px;
}
#digi-ad-app-ad-feature dl dd {
  width: 78.47%;
  margin: 0 auto;
}
#digi-ad-app-ad-feature dl dd ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 100px;
}
#digi-ad-app-ad-feature dl dd ul li {
  width: 49.22%;
  background-color: #fff;
  border-radius: 51px;
  text-align: center;
  padding-bottom: 49px;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
#digi-ad-app-ad-feature dl dd ul li .number {
  font-size: 68px;
  font-weight: bold;
  color: #6b8aff;
}
#digi-ad-app-ad-feature dl dd ul li .detail {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.57;
  margin-bottom: 40px;
}
#digi-ad-app-ad-feature dl dd ul li .detail span {
  color: #6b8aff;
}
#digi-ad-app-ad-feature dl dd ul li:first-child .img {
  width: 75.88%;
  margin: 0 auto;
}
#digi-ad-app-ad-feature dl dd ul li:nth-child(2) .img {
  width: 92.29%;
  margin: 0 auto;
}
#digi-ad-app-ad-feature dl dd ul li .point {
  width: 86.36%;
  margin: 60px auto 0;
  display: flex;
  justify-content: space-between;
}
#digi-ad-app-ad-feature dl dd ul li .point > div {
  width: 28.43%;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

#digi-ad-app-ad-feature dl dd ul li .point p {
  width: 65.9%;
  font-size: 30px;
  font-weight: bold;
  border-bottom: 6px solid #6b8aff;
  line-height: 1.375;
  text-align: left;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

/* --------------------
	digi-ad-flow
 -------------------- */
#digi-ad-flow {
  padding: 82px 0 100px;
}
#digi-ad-flow dl dt {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 127px;
}
#digi-ad-flow dl dd {
  width: 82.13%;
  margin: 0 auto;
}
#digi-ad-flow dl dd ol {
  list-style: none;
  display: flex;
  justify-content: space-between;
  margin-bottom: 39px;
  counter-reset: number;
}
#digi-ad-flow dl dd ol > li {
  width: 22.76%;
  background-color: #e5eef7;
  border-radius: 20px;
  position: relative;
  padding: 16px 0 18px;
}
#digi-ad-flow dl dd ol > li:before {
  counter-increment: number;
  content: "Step." counter(number);
  position: absolute;
  top: -1.75em;
  left: 0;
  color: #005bac;
  font-size: 30px;
  font-weight: bold;
  width: 100%;
  text-align: center;
}
#digi-ad-flow dl dd ol > li:after {
  content: "";
  position: absolute;
  left: -23px;
  top: calc(50% - 15px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15.5px 0 15.5px 16px;
  border-color: transparent transparent transparent #005bac;
}
#digi-ad-flow dl dd ol > li:first-child:after {
  content: none;
}
#digi-ad-flow dl dd ol > li p {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  color: #005bac;
  margin-bottom: 22px;
}
#digi-ad-flow dl dd ol > li ul {
  width: 82.04%;
  margin: 0 auto;
  font-size: 20px;
  font-weight: bold;
}
#digi-ad-flow dl dd ol > li a {
  display: block;
  width: 72.65%;
  background-color: #005bac;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  text-align: left;
  margin: 10px auto 0;
  position: relative;
  padding: 0 15px;
}
#digi-ad-flow dl dd ol > li a:after {
  content: "";
  position: absolute;
  top: calc(50% - 7px);
  right: 6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 12px;
  border-color: transparent transparent transparent #fff;
}
#digi-ad-flow .point {
  width: 82.13%;
  margin: 0 auto 94px;
  display: flex;
  justify-content: left;
}
#digi-ad-flow .point div {
  width: 11.54%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-right: 4.62%;
}

#digi-ad-flow .point p {
  width: 75.18%;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.375;
  border-bottom: 6px solid #005bac;
  padding-top: 20px;
}

/* --------------------
	digi-ad-creative-ad
 -------------------- */
#digi-ad-creative-ad {
  background-color: #f1fbfc;
  border-bottom: 2px solid #fff;
  padding: 80px 0 76px;
  text-align: center;
}
#digi-ad-creative-ad h2 {
  text-align: center;
  font-size: 50px;
  font-weight: bold;
  background: url("../img_hc/service/digiad_creative_icon.png") left bottom
    no-repeat;
  background-size: 158px 158px;
  padding-bottom: 40px;
  display: inline-block;
  padding-left: 158px;
  margin-bottom: 29px;
}
#digi-ad-creative-ad h2 span {
  font-size: 30px;
  color: #0098ac;
  display: block;
  transform: translateX(-70px);
}
#digi-ad-creative-ad .kinds dt {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 25px;
}
#digi-ad-creative-ad .kinds dd ul {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 78.39%;
  margin: 0 auto;
}
#digi-ad-creative-ad .kinds dd ul:after {
  content: "";
  background-color: rgba(0, 152, 172, 0.29);
  width: 80%;
  height: 55px;
  top: calc(50% - 27px);
  left: 10%;
  position: absolute;
}
#digi-ad-creative-ad .kinds dd ul li {
  width: 23.17%;
  z-index: 5;
}

/* --------------------
	digi-ad-creative-ad-feature
 -------------------- */
#digi-ad-creative-ad-feature {
  background-color: #f1fbfc;
  padding: 82px 0 79px;
}
#digi-ad-creative-ad-feature dl dt {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  color: #0098ac;
  margin-bottom: 84px;
}
#digi-ad-creative-ad-feature dl dd {
  width: 78.77%;
  margin: 0 auto;
}
#digi-ad-creative-ad-feature dl dd ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 89px;
}
#digi-ad-creative-ad-feature dl dd ul li {
  text-align: center;
  background-color: #fff;
  border-radius: 51px;
  width: 32.17%;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  padding: 0 0 29px;
}
#digi-ad-creative-ad-feature dl dd ul li .number {
  font-size: 68px;
  font-weight: bold;
  color: #0098ac;
}
#digi-ad-creative-ad-feature dl dd ul li .detail {
  font-size: 28px;
  font-weight: bold;
  width: 87.95%;
  margin: 0 auto;
  line-height: 1.57;
}
#digi-ad-creative-ad-feature dl dd ul li .detail span {
  color: #0098ac;
}
#digi-ad-creative-ad-feature dl dd ul li .balloon {
  width: 77.71%;
  min-height: 84.6px;
  margin: 40px auto 0;
  border: 2px solid #0098ac;
  border-radius: 20px;
  position: relative;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.38;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
#digi-ad-creative-ad-feature dl dd ul li .balloon:after {
  content: "";
  background: url("../img_hc/service/digiad_hukisdasi.png") center center
    no-repeat;
  background-size: cover;
  width: 26px;
  height: 30px;
  position: absolute;
  top: -30px;
  right: 30%;
}
#digi-ad-creative-ad-feature .point {
  width: 74.73%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#digi-ad-creative-ad-feature .point > div {
  width: 12.69%;
}
#digi-ad-creative-ad-feature .point p {
  width: 84.78%;
  border-bottom: 6px solid #0098ac;
  font-size: 30px;
  font-weight: bold;
}

/* --------------------
	digi-ad-inquiry
 -------------------- */
#digi-ad-inquiry {
  padding: 100px 0;
}
#digi-ad-inquiry p {
  text-align: center;
  font-size: 50px;
  font-weight: bold;
  margin-bottom: 100px;
}

@media (max-width: 900px) {
  /* --------------------
		exist top area
	-------------------- */
  #digital-ad .page__head {
    height: auto;
  }
  #digital-ad .wrap {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
  }
  #digital-ad .pc {
    display: none !important;
  }
  #digital-ad .sp {
    display: inline !important;
  }

  /* --------------------
		title sec
	 -------------------- */
  #digital-ad .title-sec {
    background: url("../img_hc/service/digiad_title_bg_sp.png") top center
      no-repeat;
    background-size: cover;
    min-height: initial;
    margin-top: 0;
  }
  #digital-ad .title-sec .wrap {
    padding-top: 0;
  }
  #digital-ad .title-sec .wrap .text-box {
    float: none;
    width: 100%;
    margin: 0;
  }
  #digital-ad .title-sec .wrap .text-box h1 {
    font-size: 48px;
    margin-bottom: 16px;
  }
  #digital-ad .title-sec .wrap .text-box p {
    font-size: 23px;
    line-height: 1.38;
    margin-bottom: 0;
  }
  #digital-ad .title-sec .wrap .text-box p b {
    font-size: 44px;
  }
  #digital-ad .title-sec .wrap .circle-box {
    float: none;
    width: 91.46%;
    margin: 0 auto;
  }
  #digital-ad .title-sec .wrap ul li a {
    font-size: 13px;
    bottom: 17%;
    left: 27.68%;
    padding: 0 10%;
    width: 44.64%;
    text-align: center;
  }
  #digital-ad .title-sec .wrap ul li a:after {
    border-width: 5px 0 5px 7px;
  }
  #digital-ad .title-sec .wrap ul li:first-child {
    width: 48.97%;
  }
  #digital-ad .title-sec .wrap ul li:first-child a {
    width: 44.64%;
    left: 27.68%;
    bottom: 17%;
  }
  #digital-ad .title-sec .wrap ul li:nth-child(2) {
    width: 48.97%;
    top: 0;
  }
  #digital-ad .title-sec .wrap ul li:nth-child(2) a {
    width: 44.64%;
    left: 27.68%;
  }
  #digital-ad .title-sec .wrap ul li:nth-child(3) {
    width: 48.97%;
    right: 25.52%;
    top: 41%;
  }
  #digital-ad .title-sec .wrap ul li:nth-child(3) a {
    width: 44.64%;
    left: 27.68%;
  }
  #digital-ad .title-sec .wrap .inquiry.sp {
    width: 91.46%;
    display: block !important;
    margin: 0 auto;
  }

  /* --------------------
		digi-ad-ts-ads
	 -------------------- */
  #digi-ad-ts-ads {
    padding: 26px 0 30px;
  }
  #digi-ad-ts-ads h2 {
    font-size: 26px;
    padding: 158px 0 0;
    background-position: top center;
    transform: none;
  }
  #digi-ad-ts-ads h2 span {
    font-size: 20px;
    transform: none;
    margin: 0;
  }
  #digi-ad-ts-ads p {
    font-size: 14px;
    line-height: 1.35;
    text-align: left;
    width: 91.46%;
    margin: 0 auto 20px;
  }
  #digi-ad-ts-ads .flow.sp {
    width: 91.46%;
    display: block;
    margin: 0 auto;
  }

  /* --------------------
		digi-ad-ts-ads-feature
	 -------------------- */
  #digi-ad-ts-ads-feature {
    padding: 29px 0 40px;
  }
  #digi-ad-ts-ads-feature dl dt {
    font-size: 20px;
    margin-bottom: 30px;
  }
  #digi-ad-ts-ads-feature dl dd {
    width: 91.46%;
  }
  #digi-ad-ts-ads-feature dl dd ul {
    display: block;
  }
  #digi-ad-ts-ads-feature dl dd ul li {
    width: 100%;
    margin-bottom: 21px;
    padding: 0 10px 29px;
  }
  #digi-ad-ts-ads-feature dl dd ul li .number {
    font-size: 36px;
  }
  #digi-ad-ts-ads-feature dl dd ul li .title {
    font-size: 24px;
    line-height: 1.375;
    margin-bottom: 19px;
  }
  #digi-ad-ts-ads-feature dl dd ul li .detail {
    font-size: 14px;
    line-height: 1.571;
    width: 100%;
  }
  #digi-ad-ts-ads-feature dl dd ul li a {
    width: 51.89%;
  }
  #digi-ad-ts-ads-feature dl dd ul li a:after {
    right: 5px;
  }
  #digi-ad-ts-ads-feature .wrap > img {
    width: 91.46%;
    margin: 20px auto 40px;
  }
  #digi-ad-ts-ads-feature .wrap .inquiry,
  #digi-ad-app-ad-feature .wrap .inquiry,
  #digi-ad-flow .wrap .inquiry,
  #digi-ad-inquiry .wrap .inquiry {
    width: 91.46%;
  }
  #digi-ad-ts-ads-feature .wrap .inquiry:hover img,
  #digi-ad-app-ad-feature .wrap .inquiry:hover img,
  #digi-ad-flow .wrap .inquiry:hover img,
  #digi-ad-inquiry .wrap .inquiry:hover img {
    opacity: 1;
  }
  #digi-ad-ts-ads-feature .wrap .inquiry:hover,
  #digi-ad-app-ad-feature .wrap .inquiry:hover,
  #digi-ad-flow .wrap .inquiry:hover,
  #digi-ad-inquiry .wrap .inquiry:hover {
    background: none;
  }

  /* --------------------
		digi-ad-app-ad
	 -------------------- */
  #digi-ad-app-ad {
    padding: 0 0 31px;
  }
  #digi-ad-app-ad h2 {
    font-size: 26px;
    padding: 158px 0 0;
    transform: none;
    background-position: top center;
    margin-bottom: 20px;
  }
  #digi-ad-app-ad h2 span {
    font-size: 20px;
    transform: none;
    margin: 0;
  }
  #digi-ad-app-ad p {
    font-size: 14px;
    text-align: left;
    width: 91.46%;
    margin: 0 auto 20px;
  }
  #digi-ad-app-ad .banner-img {
    width: 91.46%;
    margin: 0 auto 30px;
  }
  #digi-ad-app-ad .banner-img li {
    width: 46.06%;
  }
  #digi-ad-app-ad .banner-img li dl dt {
    font-size: 14px;
    padding: 0;
    border-radius: 5px;
    margin-bottom: 23px;
  }
  #digi-ad-app-ad .banner-img li dl dd .sp {
    position: absolute;
    width: 31.64%;
  }
  #digi-ad-app-ad .banner-img li:first-child dl dd .sp {
    left: 34.49%;
    bottom: 11.09%;
  }
  #digi-ad-app-ad .banner-img li:nth-child(2) dl dd .sp {
    right: 34.49%;
    top: -3%;
  }
  #digi-ad-app-ad .banner {
    width: 91.46%;
  }

  /* --------------------
		digi-ad-app-ad-feature
	 -------------------- */
  #digi-ad-app-ad-feature {
    padding: 30px 0 40px;
  }
  #digi-ad-app-ad-feature dl dt {
    font-size: 20px;
    margin-bottom: 30px;
  }
  #digi-ad-app-ad-feature dl dd {
    width: 91.46%;
  }
  #digi-ad-app-ad-feature dl dd ul {
    display: block;
    margin-bottom: 40px;
  }
  #digi-ad-app-ad-feature dl dd ul li {
    display: block;
    width: 100%;
    margin-bottom: 8px;
    border-radius: 20px;
    padding-bottom: 21px;
  }
  #digi-ad-app-ad-feature dl dd ul li .number {
    font-size: 36px;
  }
  #digi-ad-app-ad-feature dl dd ul li .detail {
    font-size: 24px;
    line-height: 1.375;
    margin-bottom: 20px;
  }
  #digi-ad-app-ad-feature dl dd ul li:first-child .img {
    width: 78.42%;
  }
  #digi-ad-app-ad-feature dl dd ul li:nth-child(2) .img {
    width: 94.46%;
  }
  #digi-ad-app-ad-feature dl dd ul li .point {
    width: 94.16%;
    margin: 10px auto 0;
    align-items: center;
  }
  #digi-ad-app-ad-feature dl dd ul li .point > div {
    width: 18.57%;
  }
  #digi-ad-app-ad-feature dl dd ul li .point > div span {
    font-size: 12px;
    min-height: 60px;
  }
  #digi-ad-app-ad-feature dl dd ul li .point p {
    width: 77.7%;
    font-size: 16px;
    border-bottom: 4px solid #6b8aff;
  }

  /* --------------------
		digi-ad-flow
	 -------------------- */
  #digi-ad-flow {
    padding: 60px 0 40px;
  }
  #digi-ad-flow dl dt {
    font-size: 20px;
    margin-bottom: 77px;
  }
  #digi-ad-flow dl dd {
    width: 65.06%;
  }
  #digi-ad-flow dl dd ol {
    display: block;
  }
  #digi-ad-flow dl dd ol > li {
    width: 100%;
    margin-top: 95px;
    padding: 20px 0 27px;
  }
  #digi-ad-flow dl dd ol > li:first-child {
    margin-top: 0;
  }
  #digi-ad-flow dl dd ol > li:after {
    left: calc(50% - 15.5px);
    top: -74px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 16px 15.5px 0 15.5px;
    border-color: #005bac transparent transparent transparent;
  }
  #digi-ad-flow dl dd ol > li p {
    font-size: 24px;
    margin-bottom: 16px;
  }
  #digi-ad-flow dl dd ol > li ul {
    width: 72.65%;
    font-size: 16px;
  }
  #digi-ad-flow dl dd ol > li a {
    padding: 5px 0 5px 18px;
  }
  #digi-ad-flow dl dd ol > li a:after {
    right: 15px;
  }
  #digi-ad-flow .point {
    width: 86.13%;
    justify-content: space-between;
    margin-bottom: 40px;
  }
  #digi-ad-flow .point div {
    width: 18.57%;
  }
  #digi-ad-flow .point div span {
    font-size: 12px;
    min-height: 60px;
    color: #6b8aff;
  }
  #digi-ad-flow .point p {
    width: 77.7%;
    font-size: 16px;
    border-bottom: 4px solid #005bac;
    padding-top: 0;
  }

  /* --------------------
		digi-ad-creative-ad
	 -------------------- */
  #digi-ad-creative-ad {
    padding: 0 0 12px;
  }
  #digi-ad-creative-ad h2 {
    font-size: 26px;
    padding: 158px 0 0;
    margin-bottom: 60px;
    line-height: 1.26;
    background-position: top center;
  }
  #digi-ad-creative-ad h2 span {
    font-size: 20px;
    margin-bottom: 10px;
    transform: none;
  }
  #digi-ad-creative-ad .kinds dt {
    font-size: 16px;
    margin-bottom: 22px;
  }
  #digi-ad-creative-ad .kinds dd ul {
    width: 91.46%;
    flex-wrap: wrap;
  }
  #digi-ad-creative-ad .kinds dd ul:after {
    content: "";
    width: 65.88%;
    height: 65.88%;
    top: 17%;
    left: 17%;
  }
  #digi-ad-creative-ad .kinds dd ul:before {
    content: "";
    background-color: #fff;
    width: 40.83%;
    height: 40.83%;
    position: absolute;
    top: 30%;
    left: 30%;
    z-index: 1;
  }
  #digi-ad-creative-ad .kinds dd ul li {
    width: 46.06%;
    margin-bottom: 20px;
  }
  #digi-ad-creative-ad .kinds dd ul li img {
    display: block;
    width: 100%;
  }
  #digi-ad-creative-ad .kinds dd ul li:nth-child(3),
  #digi-ad-creative-ad .kinds dd ul li:nth-child(4) {
    margin-bottom: 0;
  }

  /* --------------------
		digi-ad-creative-ad-feature
	 -------------------- */
  #digi-ad-creative-ad-feature {
    padding: 50px 0;
  }
  #digi-ad-creative-ad-feature dl dt {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 60px;
  }
  #digi-ad-creative-ad-feature dl dd {
    width: 91.46%;
  }
  #digi-ad-creative-ad-feature dl dd ul {
    display: block;
    margin: 0;
  }
  #digi-ad-creative-ad-feature dl dd ul li {
    width: 100%;
    border-radius: 20px;
    margin-bottom: 20px;
  }
  #digi-ad-creative-ad-feature dl dd ul li .number {
    font-size: 36px;
  }
  #digi-ad-creative-ad-feature dl dd ul li .detail {
    font-size: 24px;
    line-height: 1.375;
  }
  #digi-ad-creative-ad-feature .point {
    width: 86.13%;
  }
  #digi-ad-creative-ad-feature .point > div {
    width: 18.57%;
  }
  #digi-ad-creative-ad-feature .point > div span {
    font-size: 12px;
    min-height: 60px;
  }
  #digi-ad-creative-ad-feature .point p {
    width: 77.7%;
    font-size: 16px;
    border-bottom: 4px solid #0098ac;
    line-height: 1.375;
    padding: 4px 0;
  }

  /* --------------------
		digi-ad-inquiry
	 -------------------- */
  #digi-ad-inquiry {
    padding: 30px 0 50px;
  }
  #digi-ad-inquiry p {
    font-size: 20px;
    margin-bottom: 30px;
  }
}

/* 20201112 for t-safety */

#t-safety .title .tw-header {
  height: 80px;
}
#t-safety .title .lead-box {
  background: url("../img_hc/page/tsafety_title_bg.jpg") center center no-repeat;
  background-size: cover;
  text-align: center;
  color: #fff;
  padding: 143px 0 38px;
}
#t-safety .title .lead-box h1 {
  font-size: 54px;
  border-bottom: 5px solid #fff;
  display: inline-block;
  line-height: 1.2;
  margin-bottom: 84px;
}
#t-safety .title .lead-box p {
  font-size: 16px;
  font-weight: bold;
  line-height: 2.5;
  margin-bottom: 50px;
}
#t-safety .title .lead-box p strong {
  font-size: 26px;
}
#t-safety .title .lead-box p strong span {
  font-size: 18px;
}
#t-safety .policy {
  padding: 110px 0 80px;
  text-align: center;
}
#t-safety .policy h1 {
  color: #005bab;
  margin-bottom: 59px;
}
#t-safety .policy h1 img {
  width: 378px;
  margin-bottom: 25px;
}
#t-safety .policy h1 span {
  display: block;
  font-size: 26px;
  border: 4px solid #005bab;
  margin: 0 auto;
  width: 388px;
  padding: 10px 0;
}
#t-safety .policy dl dt {
  font-size: 28px;
  font-weight: bold;
  color: #005bab;
  position: relative;
  margin-bottom: 58px;
}
#t-safety .policy dl dt:after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(50% - 310px);
  background-color: #005bab;
  width: 620px;
  height: 2px;
}
#t-safety .policy dl dt span {
  background-color: #fff;
  position: relative;
  z-index: 1;
  padding: 0 67px;
}
#t-safety .policy dl dd ul {
  display: flex;
  justify-content: space-between;
  width: 1116px;
  margin: 0 auto;
}
#t-safety .policy dl dd ul li {
  width: 346px;
  font-weight: bold;
}
#t-safety .policy dl dd ul li img {
  margin-bottom: 28px;
}
#t-safety .policy dl dd ul li .title {
  color: #005bab;
  font-size: 26px;
  margin-bottom: 20px;
}
#t-safety .policy dl dd ul li .title span {
  display: block;
  color: #0090f1;
  font-size: 18px;
}
#t-safety .policy dl dd ul li .about {
  font-size: 16px;
  color: #515151;
}
#t-safety .inquiry {
  padding: 80px 0 90px;
  background: url("../img_hc/page/tsafety_inquiry_bg.jpg") center center no-repeat;
  background: cover;
  text-align: center;
}
#t-safety .inquiry p {
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 40px;
}
#t-safety .inquiry a {
  color: #005bab;
  font-size: 22px;
  font-weight: bold;
  background-color: #fff;
  padding: 20px 54px 20px 40px;
  border-radius: 35px;
  position: relative;
}
#t-safety .inquiry a:after {
  content: "";
  position: absolute;
  top: calc(50% - 6px);
  right: 25px;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #005bab;
}
#t-safety .inquiry a:hover {
  color: #fff;
  background-color: #005bab;
}
#t-safety .inquiry a:hover:after {
  border-color: transparent transparent transparent #fff;
}

@media (max-width: 767px) {
  #t-safety .title .tw-header {
    height: 45px;
  }
  #t-safety .title .tw-header .header__logo {
    width: 89px;
  }
  #t-safety .title .lead-box {
    background: url("../img_hc/page/tsafety_title_bg_sp.jpg") center center
      no-repeat;
    background-size: cover;
    padding: 75px 0 30px;
  }
  #t-safety .title .lead-box h1 {
    font-size: 32px;
    margin-bottom: 52px;
  }
  #t-safety .title .lead-box p {
    font-size: 14px;
    line-height: 2.35;
    margin-bottom: 40px;
  }
  #t-safety .title .lead-box p strong {
    font-size: 22px;
  }
  #t-safety .title .lead-box p strong span {
    font-size: 16px;
  }
  #t-safety .policy {
    padding: 80px 0 20px;
  }
  #t-safety .policy h1 img {
    width: 56.26%;
    margin: 0 auto 10px;
  }
  #t-safety .policy h1 span {
    font-size: 15px;
    border: 3px solid #005bab;
    width: 64%;
  }
  #t-safety .policy dl dt {
    font-size: 16px;
    margin-bottom: 40px;
  }
  #t-safety .policy dl dt:after {
    left: calc(50% - 42.5%);
    width: 85%;
  }
  #t-safety .policy dl dt span {
    padding: 0 14px;
  }
  #t-safety .policy dl dd ul {
    display: block;
    width: 81.33%;
  }
  #t-safety .policy dl dd ul li {
    width: 100%;
    padding: 60px 0 50px;
    border-top: 2px solid #005bab;
  }
  #t-safety .policy dl dd ul li:first-child {
    padding-top: 0;
    border-top: none;
  }
  #t-safety .policy dl dd ul li img {
    margin-bottom: 30px;
  }
  #t-safety .policy dl dd ul li .title {
    font-size: 24px;
  }
  #t-safety .inquiry {
    padding: 40px 0 70px;
    background: url("../img_hc/page/tsafety_inquiry_bg_sp.jpg") center center
      no-repeat;
    background-size: cover;
  }
  #t-safety .inquiry p {
    font-size: 14px;
    line-height: 2.14;
  }
  #t-safety .inquiry a {
    font-size: 14px;
    padding: 16px 43px 16px 33px;
  }
  #t-safety .inquiry a:after {
    right: 18px;
  }
  #t-safety .inquiry a:hover {
    color: #005bab;
    background-color: #fff;
  }
  #t-safety .inquiry a:hover:after {
    border-color: transparent transparent transparent #005bab;
  }
}

/* pinnarbiz expand 2021.3.18 */

#pinnarbiz .wrap {
  max-width: 1310px;
  margin: 0 auto;
}
#pinnarbiz .title-sec {
  background: url("../img_hc/service/pinnarbiz_title_base1a.png") center center
    no-repeat;
  background-size: cover;
  margin-bottom: 60px;
  min-width: 1310px;
}
#pinnarbiz .title-sec h1 {
  font-size: 48px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  height: 200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#pinnarbiz-position-service {
  padding: 60px 0;
  min-width: 1310px;
}
#pinnarbiz-position-service h2 {
  margin-bottom: 60px;
  display: none;
}
#pinnarbiz-position-service ul li {
  padding: 20px;
  margin-top: 40px;
  border: 1px solid #999;
}
#pinnarbiz-position-service ul li:first-child {
  margin-top: 0;
}
#pinnarbiz-position-service ul li dl dt {
  border-bottom: 1px solid #ccc;
  padding-bottom: 20px;
  display: flex;
  margin-bottom: 20px;
  align-items: center;
}
#pinnarbiz-position-service ul li dl dt img {
  width: 100px;
  margin-right: 20px;
}
#pinnarbiz-position-service ul li dl dt span {
  color: #005bac;
  font-size: 36px;
  font-weight: bold;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#pinnarbiz-position-service ul li dl dd {
  display: flex;
  justify-content: space-between;
}
#pinnarbiz-position-service ul li:nth-child(odd) dl dd {
  flex-direction: row-reverse;
}
#pinnarbiz-position-service ul li dl dd .text-box {
  width: 625px;
  padding: 40px 0 1em;
  position: relative;
}
#pinnarbiz-position-service ul li dl dd .text-box p {
  color: #333;
}
#pinnarbiz-position-service ul li dl dd .text-box .title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 40px;
}
#pinnarbiz-position-service ul li dl dd .text-box .about {
  font-size: 16px;
  line-height: 1.5;
}
#pinnarbiz-position-service ul li dl dd .text-box .caution {
  font-size: 14px;
  position: absolute;
  bottom: 0;
  right: 0;
}
#pinnarbiz-position-service ul li:nth-child(odd) dl dd .text-box .caution {
  left: 0;
}
#pinnarbiz-position-service ul li dl dd .img-box {
  width: 625px;
}

@media (max-width: 767px) {
  #pinnarbiz .wrap {
    max-width: initial;
  }
  #pinnarbiz .title-sec {
    margin-bottom: 20px;
    min-width: initial;
    background: none;
  }
  #pinnarbiz .title-sec h1 {
    font-size: 20px;
    background: url("../img_hc/service/pinnarbiz_title_base1_sp.png") center
      center no-repeat;
    background-size: cover;
    width: auto;
    height: auto;
    min-height: 80px;
    margin: 0 15px;
    line-height: 1.1;
  }

  #pinnarbiz-position-service {
    padding: 20px 15px;
    min-width: initial;
  }
  #pinnarbiz-position-service h2 {
    margin-bottom: 20px;
  }
  #pinnarbiz-position-service ul li {
    padding: 17px 0 0;
  }
  #pinnarbiz-position-service ul li dl dt {
    padding-bottom: 17px;
    margin: 0 10px 30px;
  }
  #pinnarbiz-position-service ul li dl dt img {
    width: 33px;
    height: 33px;
    margin-right: 6px;
  }
  #pinnarbiz-position-service ul li dl dt span {
    font-size: 16px;
    line-height: 1.25;
  }
  #pinnarbiz-position-service ul li dl dd {
    display: block;
    position: relative;
  }
  #pinnarbiz-position-service ul li dl dd .text-box {
    width: auto;
    padding: 0 10px;
    position: initial;
  }
  #pinnarbiz-position-service ul li dl dd .img-box {
    width: auto;
  }
  #pinnarbiz-position-service ul li dl dd .text-box .title {
    font-size: 16px;
    margin-bottom: 30px;
    line-height: 1.5;
  }
  #pinnarbiz-position-service ul li dl dd .text-box .about {
    font-size: 14px;
    margin-bottom: 30px;
  }
  #pinnarbiz-position-service ul li dl dd .text-box .caution {
    font-size: 12px;
    bottom: -1.5em;
  }
  #pinnarbiz-position-service ul li:nth-child(odd) dl dd .text-box .caution {
    left: auto;
  }
}

/* pinnarutility expand 2021.4.1 */

#pinnarutility .wrap {
  width: 1310px;
  margin: 0 auto;
}

#pinnarutility .title-sec {
  background: url("../img_hc/service/pinnarutility_title_base1.png") center center
    no-repeat;
  background-size: cover;
  margin-bottom: 60px;
  min-width: 1310px;
}
#pinnarutility .title-sec h1 {
  font-size: 48px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  min-height: 200px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#pinnarutility .anchor-links {
  padding: 0 0 60px;
}
#pinnarutility .anchor-links ul {
  padding: 0 0 60px;
  border-bottom: 1px solid #ccc;
  display: flex;
}
#pinnarutility .anchor-links ul li {
  width: 50%;
  border-top: 2px solid #0c63b0;
  border-bottom: 2px solid #0c63b0;
  padding: 10px 0;
  background-color: #daf0fe;
}
#pinnarutility .anchor-links ul li a {
  display: block;
  border-left: 2px solid #0c63b0;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #005bac;
  line-height: 1.5;
  padding: 10px 0;
  position: relative;
}
#pinnarutility .anchor-links ul li:first-child a {
  border-left: none;
}
#pinnarutility .anchor-links ul li a:after {
  content: "";
  position: absolute;
  bottom: -5px;
  right: calc(50% - 7.5px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 7.5px 0 7.5px;
  border-color: #005cac transparent transparent transparent;
}
#pinnarutility #inside-nav {
  padding-bottom: 195px;
}
#pinnarutility #inside-nav h2 {
  margin-bottom: 10px;
}
#pinnarutility #inside-nav h3 {
  color: #fff;
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  background-color: #adbec9;
  padding: 22px;
  line-height: 1.2;
  border-radius: 0 0 20px 20px;
  margin-bottom: 40px;
}
#pinnarutility #inside-nav .case-title {
  border: 1px solid #999;
  display: flex;
  justify-content: space-between;
  padding: 20px 20px 20px 28px;
  margin-bottom: 40px;
}
#pinnarutility #inside-nav .case-title .text-box {
  padding-top: 60px;
}
#pinnarutility #inside-nav .case-title .text-box img {
  width: 403px;
  margin-bottom: 91px;
}
#pinnarutility #inside-nav .case-title .text-box .company-name {
  font-size: 36px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 23px;
}
#pinnarutility #inside-nav .case-title .text-box .lead {
  font-size: 32px;
  font-weight: bold;
  color: #005bac;
}
#pinnarutility #inside-nav .case-title .img-box img {
  cursor: pointer;
}
#pinnarutility #inside-nav .point,
#pinnarutility #outside-nav .point {
  padding: 0 20px;
}
#pinnarutility #inside-nav .point dt,
#pinnarutility #outside-nav .point dt {
  font-size: 36px;
  font-weight: bold;
  color: #005bac;
  border-bottom: 1px solid #ccc;
  margin-bottom: 25px;
  display: flex;
  padding: 20px;
}
#pinnarutility #inside-nav .point dt:before,
#pinnarutility #outside-nav .point dt:before {
  content: "";
  background: url("../img_hc/service/pinnarutility_icon05_spot.png") center center
    no-repeat;
  background-size: cover;
  display: block;
  width: 100px;
  height: 100px;
  margin-right: 20px;
}
#pinnarutility #inside-nav .point dt span,
#pinnarutility #outside-nav .point dt span {
  display: flex;
  justify-content: center;
  flex-direction: column;
}

#pinnarutility #inside-nav .background dd ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: 54px;
}
#pinnarutility #inside-nav .background dd ul li {
  background-color: #eee;
  border-radius: 16px;
  padding: 42px 25px 18px;
  width: 302px;
}
#pinnarutility #inside-nav .background dd ul li .title {
  margin-bottom: 31px;
  line-height: 1;
  display: flex;
  align-items: center;
}
#pinnarutility #inside-nav .background dd ul li .title:before {
  content: "";
  background: url("../img_hc/service/pinnarutility_check_icon1.png") center center
    no-repeat;
  background-size: cover;
  display: block;
  width: 36px;
  height: 33px;
}
#pinnarutility #inside-nav .background dd ul li .title span {
  color: #333;
  font-size: 26px;
  font-weight: bold;
  margin-left: 5px;
}
#pinnarutility #inside-nav .background dd ul li .detail {
  color: #333;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.63;
}

#pinnarutility #inside-nav .decisive-factor {
  padding-bottom: 170px;
}
#pinnarutility #inside-nav .decisive-factor dd ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#pinnarutility #inside-nav .decisive-factor dd ul li {
  width: 625px;
  margin-bottom: 70px;
}
#pinnarutility #inside-nav .decisive-factor dd ul li .about {
  align-items: center;
  color: #fff;
  background-color: #005bac;
  border-radius: 16px;
  display: flex;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.28;
  margin-bottom: 30px;
  padding: 0 30px;
  min-height: 86px;
}
#pinnarutility #inside-nav .decisive-factor dd ul li .about:before {
  content: "";
  background: url("../img_hc/service/pinnarutility_check_icon2.png") center center
    no-repeat;
  background-size: cover;
  width: 36px;
  height: 33px;
  display: block;
}
#pinnarutility #inside-nav .decisive-factor dd ul li .about span {
  margin-left: 27px;
  width: 502px;
}
#pinnarutility #inside-nav .decisive-factor dd ul li .detail {
  color: #333;
  font-size: 24px;
  line-height: 1.5;
}
#pinnarutility #inside-nav .inquiry,
#pinnarutility #outside-nav .inquiry {
  display: block;
  margin: 0 auto;
  width: 630px;
  position: relative;
  background-color: #fff;
  color: #005bac;
  text-align: center;
  font-weight: bold;
  font-size: 32px;
  border-radius: 69px;
  padding: 40px 0;
  border: 4px solid #005bac;
}
#pinnarutility #inside-nav .inquiry:hover,
#pinnarutility #outside-nav .inquiry:hover {
  background-color: #ffb216;
  color: #fff;
  border: 4px solid #fff;
}
#pinnarutility #inside-nav .inquiry:after,
#pinnarutility #outside-nav .inquiry:after {
  content: "";
  position: absolute;
  top: calc(50% - 14px);
  right: 79px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 0 14px 22px;
  border-color: transparent transparent transparent #005bac;
}
#pinnarutility #inside-nav .inquiry:hover:after,
#pinnarutility #outside-nav .inquiry:hover:after {
  border-color: transparent transparent transparent #fff;
}

#pinnarutility #outside-nav {
  padding: 65px 0 200px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
#pinnarutility #outside-nav h2 {
  margin-bottom: 10px;
}
#pinnarutility #outside-nav h3 {
  color: #fff;
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  background-color: #adbec9;
  padding: 22px;
  line-height: 1.2;
  border-radius: 0 0 20px 20px;
  margin-bottom: 38px;
}
#pinnarutility #outside-nav .wrap > p {
  font-size: 24px;
  line-height: 1.5;
  padding: 0 22px;
  margin-bottom: 50px;
}
#pinnarutility #outside-nav .case-title {
  border: 1px solid #999;
  display: flex;
  justify-content: space-between;
  padding: 20px;
  margin-bottom: 69px;
}
#pinnarutility #outside-nav .case-title .text-box {
  color: #005bac;
  font-size: 52px;
  font-weight: bold;
  text-align: center;
  line-height: 1.53;
  padding-top: 82px;
  width: 50%;
}

#pinnarutility #outside-nav .merit {
  margin-bottom: 61px;
}
#pinnarutility #outside-nav .merit dd ul {
  display: flex;
  justify-content: space-between;
  padding: 36px 0 0 20px;
}
#pinnarutility #outside-nav .merit dd ul li {
  display: flex;
  align-items: center;
  width: 48.45%;
}
#pinnarutility #outside-nav .merit dd ul li img {
  width: 100px;
  height: 100px;
  margin-right: 34px;
}
#pinnarutility #outside-nav .merit dd ul li p {
  background-color: #005bac;
  border-radius: 55px;
  color: #fff;
  display: flex;
  flex-direction: column;
  font-size: 28px;
  font-weight: bold;
  justify-content: center;
  line-height: 1.5;
  min-height: 180px;
  padding: 0 28px;
  position: relative;
  width: 100%;
}
#pinnarutility #outside-nav .merit dd ul li p:after {
  content: "";
  position: absolute;
  top: calc(50% - 17px);
  left: -30px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 17.5px 36px 17.5px 0;
  border-color: transparent #005bac transparent transparent;
}

#pinnarutility #outside-nav .image {
  margin-bottom: 61px;
}
#pinnarutility #outside-nav .image dd ol {
  display: flex;
  justify-content: space-between;
  list-style: none;
}
#pinnarutility #outside-nav .image dd ol li {
  width: 49.21%;
}
#pinnarutility #outside-nav .image dd ol li > p {
  background-color: #daf0fe;
  color: #005bac;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 43px;
  padding: 18px 15px 14px;
}
#pinnarutility #outside-nav .image dd ol li div {
  position: relative;
}
#pinnarutility #outside-nav .image dd ol li div p {
  position: absolute;
  top: -2.5em;
  left: 0;
}
#pinnarutility #outside-nav .image dd ol li:first-child div img {
  width: 322px;
  margin-left: 220px;
}
#pinnarutility #outside-nav .image dd ol li:nth-child(2) div img {
  margin: 0 auto;
  display: block;
  width: 596px;
}

#pinnarutility #outside-nav .company dd ul {
  display: flex;
  flex-wrap: wrap;
  padding: 39px 107px 189px;
}
#pinnarutility #outside-nav .company dd ul li {
  width: 240px;
  margin: 12px;
}

@media (max-width: 767px) {
  #pinnarutility .wrap {
    width: 100%;
  }
  #pinnarutility .title-sec {
    background: none;
    min-width: initial;
    margin-bottom: 22px;
  }
  #pinnarutility .title-sec h1 {
    background: url("../img_hc/service/pinnarutility_title_base1_sp.png") center
      center no-repeat;
    background-size: cover;
    font-size: 20px;
    margin: 0 15px;
    min-height: initial;
    padding: 20px 0;
  }
  #pinnarutility .anchor-links {
    padding: 0 0 20px;
  }
  #pinnarutility .anchor-links .wrap {
    border-bottom: 1px solid #ccc;
  }
  #pinnarutility .anchor-links ul {
    padding: 0 0 20px;
    display: block;
    border-top: 2px solid #0c63b0;
    margin: 0 15px;
    border-bottom: none;
  }
  #pinnarutility .anchor-links ul li {
    width: 100%;
    border-top: none;
    padding: 0;
  }
  #pinnarutility .anchor-links ul li a {
    align-items: center;
    border-left: none;
    display: flex;
    font-size: 16px;
    text-align: left;
    line-height: 1.25;
    min-height: 50px;
    padding: 7px 25px 7px 20px;
  }
  #pinnarutility .anchor-links ul li a:after {
    bottom: calc(50% - 7.5px);
    right: 10px;
  }
  #pinnarutility #inside-nav {
    padding-bottom: 49px;
  }
  #pinnarutility #inside-nav h2 {
    margin-bottom: 5px;
  }
  #pinnarutility #inside-nav h3 {
    font-size: 16px;
    padding: 10px;
    border-radius: 0 0 10px 10px;
    margin-bottom: 20px;
  }
  #pinnarutility #inside-nav .wrap {
    padding: 0 15px;
  }
  #pinnarutility #inside-nav .case-title {
    display: block;
    padding: 22px 10px 10px;
    margin-bottom: 15px;
  }
  #pinnarutility #inside-nav .case-title .text-box {
    padding: 0 0 20px;
  }
  #pinnarutility #inside-nav .case-title .text-box img {
    width: 161px;
    margin-bottom: 20px;
  }
  #pinnarutility #inside-nav .case-title .text-box .company-name {
    font-size: 28px;
    margin-bottom: 10px;
  }
  #pinnarutility #inside-nav .case-title .text-box .lead {
    font-size: 16px;
  }
  #pinnarutility #inside-nav .case-title .img-box a {
    display: block;
  }
  #pinnarutility #inside-nav .point {
    padding: 0;
    margin: 0 10px;
  }
  #pinnarutility #inside-nav .point dt,
  #pinnarutility #outside-nav .point dt {
    font-size: 16px;
    margin-bottom: 15px;
    min-height: 60px;
    padding: 0 6px;
    align-items: center;
  }
  #pinnarutility #inside-nav .point dt:before,
  #pinnarutility #outside-nav .point dt:before {
    width: 33px;
    height: 33px;
    margin-right: 6px;
  }
  #pinnarutility #inside-nav .background dd ul {
    display: block;
    margin-bottom: 25px;
  }
  #pinnarutility #inside-nav .background dd ul li {
    padding: 20px 15px 11px;
    width: 100%;
    margin-top: 10px;
    min-height: 108px;
  }
  #pinnarutility #inside-nav .background dd ul li:first-child {
    margin-top: 0;
  }
  #pinnarutility #inside-nav .background dd ul li .title {
    margin-bottom: 22px;
  }
  #pinnarutility #inside-nav .background dd ul li .title:before {
    width: 26px;
    height: 24px;
  }
  #pinnarutility #inside-nav .background dd ul li .title span {
    font-size: 16px;
    margin-left: 6px;
  }
  #pinnarutility #inside-nav .background dd ul li .detail {
    font-size: 14px;
    line-height: 1.42;
  }
  #pinnarutility #inside-nav .decisive-factor {
    padding-bottom: 22px;
  }
  #pinnarutility #inside-nav .decisive-factor dd ul {
    display: block;
  }
  #pinnarutility #inside-nav .decisive-factor dd ul li {
    width: 100%;
    margin-bottom: 28px;
  }
  #pinnarutility #inside-nav .decisive-factor dd ul li .about {
    border-radius: 12px;
    font-size: 16px;
    line-height: 1.56;
    margin-bottom: 20px;
    padding: 0 9px;
    min-height: 64px;
  }
  #pinnarutility #inside-nav .decisive-factor dd ul li .about:before {
    width: 26px;
    height: 24px;
  }
  #pinnarutility #inside-nav .decisive-factor dd ul li .about span {
    margin-left: 6px;
    width: calc(100% - 26px);
  }
  #pinnarutility #inside-nav .decisive-factor dd ul li .detail {
    font-size: 14px;
  }
  #pinnarutility #inside-nav .inquiry,
  #pinnarutility #outside-nav .inquiry {
    width: 343px;
    font-size: 24px;
    border-radius: 50px;
    padding: 23px 0;
    border: 2px solid #005bac;
  }
  #pinnarutility #inside-nav .inquiry:hover,
  #pinnarutility #outside-nav .inquiry:hover {
    background-color: #fff;
    color: #005bac;
    border: 2px solid #005bac;
  }
  #pinnarutility #inside-nav .inquiry:after,
  #pinnarutility #outside-nav .inquiry:after {
    top: calc(50% - 6px);
    right: 40px;
    border-width: 6.5px 0 6.5px 10px;
  }
  #pinnarutility #inside-nav .inquiry:hover:after,
  #pinnarutility #outside-nav .inquiry:hover:after {
    border-color: transparent transparent transparent #005bac;
  }
  #pinnarutility #outside-nav {
    padding: 21px 15px 50px;
  }
  #pinnarutility #outside-nav h2 {
    margin-bottom: 5px;
  }
  #pinnarutility #outside-nav h3 {
    font-size: 16px;
    padding: 10px;
    border-radius: 0 0 10px 10px;
    margin-bottom: 20px;
  }
  #pinnarutility #outside-nav .wrap > p {
    font-size: 12px;
    padding: 0 0 20px;
    margin-bottom: 20px;
    position: relative;
  }
  #pinnarutility #outside-nav .wrap > p:after {
    content: "";
    background-color: #ccc;
    height: 1px;
    position: absolute;
    width: calc(100% - 20px);
    left: 10px;
    bottom: 0;
  }
  #pinnarutility #outside-nav .case-title {
    border: none;
    display: block;
    padding: 0;
    margin-bottom: 38px;
  }
  #pinnarutility #outside-nav .case-title .text-box {
    font-size: 26px;
    padding: 33px 0;
    width: 100%;
  }
  #pinnarutility #outside-nav .point {
    padding: 0;
  }
  #pinnarutility #outside-nav .point dt {
    margin: 0 10px 15px;
  }
  #pinnarutility #inside-nav .point dt span,
  #pinnarutility #outside-nav .point dt span {
    width: calc(100% - 41px);
  }
  #pinnarutility #outside-nav .merit {
    margin-bottom: 49px;
  }
  #pinnarutility #outside-nav .merit dd ul {
    display: block;
    padding: 0;
  }
  #pinnarutility #outside-nav .merit dd ul li {
    width: 100%;
    margin-top: 10px;
  }
  #pinnarutility #outside-nav .merit dd ul li:first-child {
    margin-top: 0;
  }
  #pinnarutility #outside-nav .merit dd ul li img {
    width: 56px;
    height: 56px;
    margin-right: 20px;
  }
  #pinnarutility #outside-nav .merit dd ul li p {
    border-radius: 20px;
    font-size: 16px;
    min-height: 98px;
    padding: 0 10px;
  }
  #pinnarutility #outside-nav .merit dd ul li p:after {
    top: calc(50% - 9px);
    left: -17px;
    border-width: 9px 20px 9px 0;
    border-color: transparent #005bac transparent transparent;
  }
  #pinnarutility #outside-nav .image {
    margin-bottom: 63px;
  }
  #pinnarutility #outside-nav .image dd ol {
    display: block;
  }
  #pinnarutility #outside-nav .image dd ol li {
    width: 100%;
    margin-top: 21px;
  }
  #pinnarutility #outside-nav .image dd ol li:first-child {
    margin-top: 0;
  }
  #pinnarutility #outside-nav .image dd ol li > p {
    font-size: 14px;
    margin-bottom: 10px;
    padding: 10px 8px;
  }
  #pinnarutility #outside-nav .image dd ol li div p {
    font-size: 12px;
    position: relative;
    top: 0;
    left: 0;
    margin-bottom: 16px;
  }
  #pinnarutility #outside-nav .image dd ol li:first-child div img {
    width: 30.4%;
    margin: 24px auto 0;
    display: block;
  }
  #pinnarutility #outside-nav .image dd ol li:nth-child(2) div img {
    width: 327px;
  }
  #pinnarutility #outside-nav .company dd ul {
    padding: 20px 10px 40px;
    justify-content: space-between;
  }
  #pinnarutility #outside-nav .company dd ul li {
    width: 48%;
    margin: 0 0 10px 10px;
  }
  #pinnarutility #outside-nav .company dd ul li:nth-child(odd) {
    margin: 0 0 10px 0;
  }
}

/* staff page extend */
#staff .article__body .flex2col table tbody {
  display: table-row-group;
}
#staff .article__body .flex2col table tbody tr {
  display: table-row;
}
#staff .article__body .flex2col table tbody tr th,
#staff .article__body .flex2col table tbody tr td {
  display: table-cell;
}
#staff .article__body .flex2col table tbody tr th {
  border-bottom: 1px solid #bfbfbf;
  background-color: #fafafa;
  padding: 1em 1.5em;
  color: #000;
  text-align: left;
}
#staff .article__body .flex2col table tbody tr td {
  border-bottom: 1px solid #bfbfbf;
  padding: 1em 1.5em;
}
@media (min-width: 768px) {
  #staff .article__body .flex2col {
    align-items: flex-start;
  }
  #staff .article__body tbody th {
    width: 40%;
  }
  #staff .article__body tbody th,
  #staff .article__body tbody td {
    text-align: left;
  }
}

