@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Sawarabi+Mincho&display=swap");

.for_sp {
  display: none;
}

.for_pc {
  display: inline-block;
}

@media screen and (max-width: 1000px) {
  .for_sp {
    display: inline-block;
  }

  .for_pc {
    display: none;
  }
}

html,
body {
  width: 100%;
}

html {
  scroll-behavior: smooth;
  font-size: 62.5%;
}

body {
  position: relative;
  background-color: #fff;
  font-size: 1.6rem;
  line-height: 1.45;
  letter-spacing: 0;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}

/***************************************************** pc */
@media (min-width: 1001px) {
  a {
    transition: 0.3s ease-in-out;
  }

  img {
    transition: 0.3s ease-in-out;
  }

  a:active,
  a:hover,
  a:hover img {
    opacity: 0.5;
  }

  .showup {
    opacity: 0;
    transition: 1s;
    transform: translateY(20px);
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -o-transform: translateY(20px);
  }

  .upview {
    -moz-animation: showup 0.6s linear 0s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0s 1 normal forwards;
    -o-animation: showup 0.6s linear 0s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0s 1 normal forwards;
  }

  .upview.uv2 {
    -moz-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.3s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.3s 1 normal forwards;
  }

  .upview.uv3 {
    -moz-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.6s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.6s 1 normal forwards;
  }

  .upview.uv4 {
    -moz-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -o-animation: showup 0.6s linear 0.9s 1 normal forwards;
    -ms-animation: showup 0.6s linear 0.9s 1 normal forwards;
  }

  .upview.uv5 {
    -moz-animation: showup 0.6s linear 1.2s 1 normal forwards;
    -webkit-animation: showup 0.6s linear 1.2s 1 normal forwards;
    -o-animation: showup 0.6s linear 1.2s 1 normal forwards;
    -ms-animation: showup 0.6s linear 1.2s 1 normal forwards;
  }

  .showdown {
    opacity: 0;
    transition: 1s;
    transform: translateY(-20px);
    -webkit-transform: translateY(-20px);
    -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    -o-transform: translateY(-20px);
  }

  .downview {
    -moz-animation: showdown 0.6s linear 0s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0s 1 normal forwards;
  }

  .downview.dv2 {
    -moz-animation: showdown 0.6s linear 0.3s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0.3s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0.3s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0.3s 1 normal forwards;
  }

  .downview.dv3 {
    -moz-animation: showdown 0.6s linear 0.6s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0.6s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0.6s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0.6s 1 normal forwards;
  }

  .downview.dv4 {
    -moz-animation: showdown 0.6s linear 0.9s 1 normal forwards;
    -webkit-animation: showdown 0.6s linear 0.9s 1 normal forwards;
    -o-animation: showdown 0.6s linear 0.9s 1 normal forwards;
    -ms-animation: showdown 0.6s linear 0.9s 1 normal forwards;
  }

  .showleft {
    opacity: 0;
    transition: 1s;
    transform: translateX(-20px);
    -webkit-transform: translateX(-20px);
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -o-transform: translateX(-20px);
  }

  .leftview {
    -moz-animation: showleft 1s linear 0s 1 normal forwards;
    -webkit-animation: showleft 1s linear 0s 1 normal forwards;
    -o-animation: showleft 1s linear 0s 1 normal forwards;
    -ms-animation: showleft 1s linear 0s 1 normal forwards;
  }

  .showright {
    opacity: 0;
    transition: 1s;
    transform: translateX(20px);
    -webkit-transform: translateX(20px);
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -o-transform: translateX(20px);
  }

  .rightview {
    -moz-animation: showright 1s linear 0s 1 normal forwards;
    -webkit-animation: showright 1s linear 0s 1 normal forwards;
    -o-animation: showright 1s linear 0s 1 normal forwards;
    -ms-animation: showright 1s linear 0s 1 normal forwards;
  }

  .wrap,
  #page {
    width: 100%;
    position: relative;
  }

  /* common
  ---------------------------------------------------------------------- */
  .mainw,
  .mainw_pc {
    max-width: 1060px;
    margin: 0 auto;
    padding: 0 20px;
  }

  .w1200 {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
  }

  .img100 {
    width: 100%;
  }

  .img100 img {
    width: 100%;
  }

  /* keyframe
  ---------------------------------------------------------------------- */
}

/***************************************************** sp */
@media screen and (max-width: 1000px) {
  body {
    font-size: max(10px, 4.2666666667vw);
    line-height: 1.45;
  }

  a {
    transition: 0.3s ease-in-out;
  }

  img {
    transition: 0.3s ease-in-out;
  }

  a:active,
  a:hover,
  a:hover img {
    opacity: 0.7;
  }

  .wrap,
  #page {
    width: 100%;
    position: relative;
  }

  .for_pc {
    display: none !important;
  }

  .for_tab {
    display: none;
  }

  .for_pcnotab {
    display: none !important;
  }

  .for_nw {
    display: none !important;
  }

  .showup {
    opacity: 0;
    transition: 1s;
    transform: translateY(4vw);
    -webkit-transform: translateY(4vw);
    -moz-transform: translateY(4vw);
    -ms-transform: translateY(4vw);
    -o-transform: translateY(4vw);
  }

  .upview {
    -moz-animation: showup 1s linear 0s 1 normal forwards;
    -webkit-animation: showup 1s linear 0s 1 normal forwards;
    -o-animation: showup 1s linear 0s 1 normal forwards;
    -ms-animation: showup 1s linear 0s 1 normal forwards;
  }

  .showdown {
    opacity: 0;
    transition: 1s;
    transform: translateY(-4vw);
    -webkit-transform: translateY(-4vw);
    -moz-transform: translateY(-4vw);
    -ms-transform: translateY(-4vw);
    -o-transform: translateY(-4vw);
  }

  .downview {
    -moz-animation: showup 1s linear 0s 1 normal forwards;
    -webkit-animation: showup 1s linear 0s 1 normal forwards;
    -o-animation: showup 1s linear 0s 1 normal forwards;
    -ms-animation: showup 1s linear 0s 1 normal forwards;
  }

  .showleft {
    opacity: 0;
    transition: 1s;
    transform: translateX(-4vw);
    -webkit-transform: translateX(-4vw);
    -moz-transform: translateX(-4vw);
    -ms-transform: translateX(-4vw);
    -o-transform: translateX(-4vw);
  }

  .leftview {
    -moz-animation: showleft 1s linear 0s 1 normal forwards;
    -webkit-animation: showleft 1s linear 0s 1 normal forwards;
    -o-animation: showleft 1s linear 0s 1 normal forwards;
    -ms-animation: showleft 1s linear 0s 1 normal forwards;
  }

  .showright {
    opacity: 0;
    transition: 1s;
    transform: translateX(4vw);
    -webkit-transform: translateX(4vw);
    -moz-transform: translateX(4vw);
    -ms-transform: translateX(4vw);
    -o-transform: translateX(4vw);
  }

  .rightview {
    -moz-animation: showright 1s linear 0s 1 normal forwards;
    -webkit-animation: showright 1s linear 0s 1 normal forwards;
    -o-animation: showright 1s linear 0s 1 normal forwards;
    -ms-animation: showright 1s linear 0s 1 normal forwards;
  }

  /* common
  ---------------------------------------------------------------------- */
  .mainw {
    width: 90.666vw;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  /* keyframe
  ---------------------------------------------------------------------- */
}

.wrapper {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
  min-height: 100vh;
}

.header {
  padding: 20px;
  background: #0249b9;
}

.header .name {
  max-width: 1000px;
  margin: 0 auto;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
}

.contents_wrapper {
  padding: 80px 20px;
}

.contents {
  max-width: 1000px;
  margin: 0 auto;
}

.footer {
  padding: 20px;
  background: #0249b9;
  color: #fff;
}

.footer .footer_nav {
  display: flex;
  justify-content: center;
}

.footer .footer_nav>li {
  margin: 0 20px 0 0;
  padding: 0 20px 0 0;
  border-right: 1px solid #fff;
}

.footer .footer_nav>li:last-child {
  margin: 0;
  padding: 0;
  border-right: none;
}

.footer .footer_nav>li a {
  color: #fff;
}

.footer .copy {
  margin: 20px 0 0;
  text-align: center;
  color: #fff;
}

@media screen and (max-width: 1000px) {
  .header {
    padding: 6vw;
  }

  .header .name {
    font-size: 6vw;
  }

  .contents_wrapper {
    padding: 18vw 6vw;
  }

  .footer {
    padding: 6vw 0;
  }

  .footer .footer_nav>li {
    margin: 0 3vw 0 0;
    padding: 0 3vw 0 0;
    font-size: 3.2vw;
  }

  .footer .footer_nav>li:last-child {
    margin: 0;
    padding: 0;
  }
}

/*---------------
 privacy-policy
----------------*/
.h1_title {
  margin: 0 0 50px;
  text-align: center;
  font-weight: bold;
  font-size: 32px;
}

.h2_title {
  margin: 0 0 30px;
  font-weight: bold;
  font-size: 24px;
}

.docs-sec {
  margin: 60px 0 0;
  line-height: 1.8;
}

.docs-sec p:not(:last-child) {
  margin-bottom: 20px;
}

.docs-sec ol {
  list-style: decimal;
  margin: 0 0 0 1.5em;
}

.docs-sec a {
  color: #007bff;
}

@media screen and (max-width: 1000px) {
  .h1_title {
    margin: 0 0 10vw;
    font-size: 7vw;
  }

  .h2_title {
    margin: 0 0 5.2vw;
    font-size: 5vw;
  }

  .docs-sec {
    margin: 12vw 0 0;
  }

  .docs-sec p:not(:last-child) {
    margin-bottom: 5.2vw;
  }

  .docs-sec ol {
    margin: 0 0 0 1.5em;
  }
}

/*---------------
 tokusho
----------------*/
.qrcode {
  display: flex;
  flex-direction: column;
}

/*---------------
 company
----------------*/
.company_list {
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.8;
}

.company_list>li {
  width: 100%;
}

.company_list>li:nth-child(odd) {
  background: #f0f0f0;
}

.company_list>li .list_inner {
  display: flex;
  align-items: center;
  width: 100%;
}

.company_list>li .list_inner .title {
  width: 31%;
  padding: .8em;
}

.company_list>li .list_inner .text {
  width: 69%;
  padding: .8em;
}

@media screen and (max-width: 1000px) {
  .company_list>li .list_inner .title {
    padding: .5em;
    font-size: 3.8vw;
  }

  .company_list>li .list_inner .text {
    padding: .5em;
    font-size: 3.8vw;
  }
}

/*---------------
 rules
----------------*/
ol.number_list {
  margin: 0;
  list-style: none;
  counter-reset: number;
}

ol.number_list>li {
  display: flex;
  counter-increment: number;
}

ol.number_list>li::before {
  white-space: nowrap;
  content: "（" counter(number)"）";
}
