header {
  position: relative;
}
header .logo {
  max-width: 120px;
  margin: 0 0;
}

header nav {
  display: none;
}

main section {
  padding: 5.5vh 1em;
}

#service-sec .Inner__wrap .contents .Item.wh--box span.number.right {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-left: 0;
}

.sec-header h1 {
  text-shadow: white 1px 1px 2px, white -1px 1px 2px, white 1px -1px 2px, white -1px -1px 2px;
  line-height: 1.2 !important;
}

.sec-header h1 span.jan {
  text-shadow: none;
}

.slide-text-wrap {
  width: 100%;
  max-width: 95%;
}

.fv__wrapper h1 {
  width: 100%;
  right: 0 !important;
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.fv__wrapper h1.fz50 {
  font-size: 21px;
}
.fv__wrapper h1 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 0;
  width: 100%;
  max-width: 100%;
  margin: auto;
}

.fv__wrapper h1 span:nth-of-type(2) {
  margin-left: 0;
}

.overlay {
  display: none;
}

.overlay .menu__wrap .Left .logo {
  max-width: 200px;
  margin: 0 auto;
}

.overlay .menu__wrap .Left {
  padding-top: 15vh;
}

.overlay .menu__wrap .Left ul li {
  font-size: 1.1rem;
  margin-bottom: 0.75em;
}
.overlay .menu__wrap .Left ul li a {
  text-decoration: none;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  right: 0;
}
.overlay .menu__wrap .Left ul li a:hover {
  text-shadow: 0px 0px 10px rgb(255, 255, 255);
  right: -8px;
}

.slider {
  height: 50vh;
}

.slick-slide img {
  height: 50vh;
  -o-object-fit: cover;
     object-fit: cover;
}

.fv__wrapper .Left {
  width: 70%;
  position: absolute;
  left: 50%;
  top: 15%;
  -webkit-transform: translateY(-15%) translateX(-50%);
          transform: translateY(-15%) translateX(-50%);
  z-index: 4;
}

#sec-mission .Inner__wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#sec-mission .Left, #sec-mission .Right {
  width: 100% !important;
}

#sec-mission .Inner__wrap h2 picture {
  max-width: 100px;
}

main section h2 {
  font-size: 1.5rem;
}

#sec-mission h2 picture {
  max-width: 100px !important;
  margin-top: 1em;
}

#sec-mission h2.center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#service-sec {
  background: url(../images/service__bg__sp.webp) no-repeat right top;
  position: relative;
}
#service-sec::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 90%;
  background: #005499;
  z-index: -1;
  top: 10%;
  left: 0;
}

#service-sec .Inner__wrap .Text__top .Item, #service-sec .Inner__wrap .contents .Item {
  max-width: 100%;
}

#service-sec .Inner__wrap .Text__top, #service-sec .Inner__wrap .contents {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

#service-sec .Inner__wrap .contents .Item.wh--box.left {
  width: 100%;
  margin: 0 auto 0;
  padding-top: 0.75em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 365px;
}

#service-sec .Inner__wrap .contents .Item.wh--box span.number {
  font-size: 66px;
}

#service-sec .Inner__wrap .contents .Item.wh--box span.number small {
  font-size: 34px;
}

#service-sec .Inner__wrap .contents {
  margin-top: 1em;
}

#service-sec .Inner__wrap .contents .Item.wh--box h3 {
  max-width: 100%;
  font-size: 1.3rem;
  margin: 0 auto;
  width: 100%;
}

#service-sec .Inner__wrap .contents .Item.wh--box picture.right {
  max-width: 180px;
  margin: 0 auto;
}

#service-sec .Inner__wrap .contents picture.first {
  display: none;
}

#service-sec .Inner__wrap .contents .Item.wh--box.space {
  max-width: 100%;
  width: 100%;
  -webkit-box-flex: inherit;
      -ms-flex: inherit;
          flex: inherit;
}

#service-sec .contents + .contents {
  margin-top: 5vh;
  row-gap: 5vh;
}

section#ppp p {
  text-align: left;
  font-size: 0.9rem;
}

section#ppp .Inner__wrap .news__wrap ul.news li, section#news .Inner__wrap .news__wrap ul.news li {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  row-gap: 0.25em;
}

section.texture-bg.service-contents {
  padding-left: 0;
  padding-right: 0;
}

.tab_item {
  font-size: 15px !important;
}

h2.border {
  margin-top: 0;
}

section#ppp .Inner__wrap .news__wrap ul.news li .icon {
  font-size: 0.75rem;
}

.service__wrap .Left {
  margin-bottom: 1em !important;
}

dl.border dt {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

h2 .en {
  font-size: 37px;
}

footer .Inner__wrap .Left {
  width: 100%;
}

footer .Inner__wrap .Right {
  display: none;
}

footer .Inner__wrap .Left p {
  margin: 0.5em auto;
}

footer .Inner__wrap .Left p.small {
  font-size: 0.7rem;
  margin-top: 0.5em;
}

footer .Logo__wrap img {
  max-width: 120px;
}

#page__top__wrap a.pagetop {
  width: 18px;
}

section.texture-bg .service__wrap::after {
  display: none;
}

.partner__left {
  margin-bottom: 1em;
}

section.texture-bg .service__wrap:nth-of-type(1):before, section.texture-bg .service__wrap:nth-of-type(2):before, section.texture-bg .service__wrap:nth-of-type(3):before {
  width: 100px !important;
  height: 70px !important;
}

#service-sec .Inner__wrap {
  padding-top: 10vh;
}

.proposal-thumbnail img {
  width: 100%;
  height: auto;
}

p.date {
  margin-bottom: 0;
  margin-top: 0;
}

.message__wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.message__wrap .text__wrap {
  width: 100% !important;
}

.message__wrap .main__title {
  left: 0 !important;
  margin: 0 auto !important;
}

.message__wrap picture {
  width: 80% !important;
  margin: 0 auto 0.5em;
}

.message__wrap .text__wrap .title {
  font-size: 1.4rem !important;
}

.message__wrap .text__wrap p {
  text-align: justify;
}

.message__wrap .text__wrap p br {
  display: none;
}

.message video {
  width: 100% !important;
  height: 100% !important;
}