:root {
  --color-black: #222222;
  --color-white: #ffffff;
  --color-gray: #595757;
  --color-lightgray: #E6F0F0;
  --color-primary: #004F99;
  --color-secondary: #008A3B;
  --color-blue: #178FD9;
  --color-lightblue: #EBF2F4;
  --color-lightblue2: #D9E8EC;
  --color-navy: #2F2A7F;
  --color-lightnavy: #EBEBF4;
  --color-green: #258346;
  --color-yellowgreen: #579900;
  --color-lightyellowgreen: #EAF0E2;
  --color-orange: #E97406;
  --color-purple: #774B91;
  --color-enji: #842640;
  --color-lightenji: #F2ECEC;
  --color-pink: #AC4683;
  --color-lightpink: #F2ECF0;
  --color-gold: #A99500;
  --color-border: #DFEAED;
  --color-bg: #F4F4F4;
}

/*----------------------------------------

	privacy CSS

-----------------------------------------*/
/*----------------------------------------
	Privacy Policy
-----------------------------------------*/
.wrapper {
  overflow: hidden;
}

.content {
  background: var(--color-bg);
}
.content > .breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 20rem;
  background: var(--color-white);
}
@media screen and (max-width: 959px ) {
  .content > .breadcrumb {
    padding: 15rem 20rem 30rem;
  }
}

.privacy {
  padding: 100rem 140rem;
  background: var(--color-bg);
}
@media screen and (max-width: 959px ) {
  .privacy {
    padding: 50rem 20rem;
  }
}
.privacy h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 20rem;
  margin-bottom: 35rem;
  color: var(--color-black);
  font-size: 30rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
@media screen and (max-width: 959px ) {
  .privacy h2 {
    gap: 10rem;
    margin-bottom: 25rem;
    font-size: 20rem;
  }
}
.privacy h2 .num {
  padding-right: 20rem;
  color: var(--color-primary);
  font-family: "Heebo", sans-serif;
  font-size: 40rem;
  letter-spacing: 0.05em;
  line-height: 0.8;
  border-right: 2rem solid var(--color-primary);
}
@media screen and (max-width: 959px ) {
  .privacy h2 .num {
    padding-right: 8rem;
    font-size: 24rem;
  }
}
.privacy h3 {
  margin: 45rem 0 20rem;
}
@media screen and (max-width: 959px ) {
  .privacy h3 {
    margin: 35rem 0 15rem;
  }
}
.privacy h3:first-child {
  margin-top: 0;
}
.privacy h4,
.privacy h5 {
  margin: 30rem 0 15rem;
  font-size: 18rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.7;
}
@media screen and (max-width: 959px ) {
  .privacy h4,
  .privacy h5 {
    margin: 25rem 0 12rem;
    font-size: 16rem;
  }
}
.privacy h4::before {
  display: inline-block;
  content: "";
  width: 10rem;
  height: 10rem;
  margin-right: 10rem;
  border-radius: 50%;
  background: var(--color-primary);
}
@media screen and (max-width: 959px ) {
  .privacy h4::before {
    -webkit-transform: translateY(-2rem);
            transform: translateY(-2rem);
    width: 8rem;
    height: 8rem;
    margin-right: 8rem;
  }
}
.privacy .txt-lead {
  font-size: 18rem;
}
@media screen and (max-width: 959px ) {
  .privacy .txt-lead {
    font-size: 14rem;
    text-align: justify;
  }
}
.privacy p,
.privacy li {
  font-size: 16rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (max-width: 959px ) {
  .privacy p,
  .privacy li {
    font-size: 13rem;
    line-height: 1.9;
    text-align: justify;
  }
}
.privacy a {
  color: var(--color-primary);
  text-decoration: underline;
  text-underline-offset: 3rem;
}
.privacy > p,
.privacy > div > p {
  margin-bottom: 30rem;
}
.privacy > div + div {
  margin-top: 60rem;
}
@media screen and (max-width: 959px ) {
  .privacy > div + div {
    margin-top: 40rem;
  }
}
.privacy ol {
  counter-reset: privacyCounter;
}
.privacy ol > li {
  position: relative;
  padding-left: 28rem;
  counter-increment: privacyCounter;
}
@media screen and (max-width: 959px ) {
  .privacy ol > li {
    padding-left: 24rem;
  }
}
.privacy ol > li + li {
  margin-top: 16rem;
}
.privacy ol > li::before {
  position: absolute;
  left: 0;
  top: 0;
  content: counter(privacyCounter) ".";
  color: var(--color-primary);
  font-family: "Heebo", sans-serif;
  font-weight: 700;
}
.privacy .dot-list {
  margin-top: 12rem;
}
.privacy .dot-list li {
  position: relative;
  padding-left: 18rem;
}
.privacy .dot-list li + li {
  margin-top: 20rem;
}
@media screen and (max-width: 959px ) {
  .privacy .dot-list li + li {
    margin-top: 10rem;
  }
}
.privacy .dot-list li::before {
  position: absolute;
  left: 0;
  top: 0.85em;
  content: "";
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  background: var(--color-primary);
}
.privacy .dot-list._gray li::before {
  background: var(--color-gray);
}
.privacy .dot-list._white li::before {
  background: var(--color-white);
}
.privacy .note {
  margin-top: 40rem;
  font-size: 14rem;
}
@media screen and (max-width: 959px ) {
  .privacy .note {
    margin-top: 20rem;
    font-size: 11rem;
  }
}

.privacy01 {
  padding-top: 120rem;
}
@media screen and (max-width: 959px ) {
  .privacy01 {
    padding-top: 50rem;
  }
}
.privacy01 > div {
  max-width: 1640rem;
  margin-inline: auto;
}
.privacy01 .layout-box01 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 60rem 180rem;
  grid-template-columns: 1fr 180rem;
  gap: 60rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  margin-bottom: 35rem;
}
@media screen and (max-width: 959px ) {
  .privacy01 .layout-box01 {
    display: block;
    margin-bottom: 25rem;
  }
}
.privacy01 .layout-box01 figure {
  width: 280rem;
}
@media screen and (max-width: 959px ) {
  .privacy01 .layout-box01 figure {
    width: 120rem;
    margin: 20rem auto 0;
    padding-top: 0;
  }
}
.privacy01 .layout-box01 figure img {
  border-radius: 2rem;
}
.privacy01 .signeture,
.privacy01 .date {
  text-align: right;
}
.privacy01 .signeture {
  margin-top: 30rem;
  margin-bottom: 0;
}
.privacy01 .date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 5rem;
}
.privacy01 .column {
  margin-top: 20rem;
}
.privacy01 .column ol > li {
  padding-left: 0;
}
.privacy01 .column ol > li::before {
  display: none;
}
.privacy01 .column ol > li + li {
  margin-top: 40rem;
}
@media screen and (max-width: 959px ) {
  .privacy01 .column ol > li + li {
    margin-top: 30rem;
  }
}
.privacy01 .column ol > li > p {
  font-weight: 700;
}
.privacy01 .layout-box02 {
  margin-top: 50rem;
}
.privacy01 .info-box {
  margin-top: 30rem;
  padding: 72rem 40rem;
  background: var(--color-white);
  text-align: center;
}
@media screen and (max-width: 959px ) {
  .privacy01 .info-box {
    padding: 30rem 20rem;
  }
}
.privacy01 .info-box h3 {
  display: block;
  margin: 0;
  padding-bottom: 0;
  font-size: 28rem;
  text-align: center;
}
@media screen and (max-width: 959px ) {
  .privacy01 .info-box h3 {
    font-size: 18rem;
  }
}
.privacy01 .info-box h3::after {
  display: none;
}
.privacy01 .info-box h3 + .note {
  margin-top: 5rem;
}
.privacy01 .info-box .note {
  margin: 0 0 18rem;
  text-align: center;
}
.privacy01 .info-box .ttl {
  max-width: 420rem;
  width: 100%;
  margin: 0 auto 20rem;
  padding: 8rem 20rem;
  background: var(--color-primary);
  color: var(--color-white);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 15rem;
}
@media screen and (max-width: 959px ) {
  .privacy01 .info-box .ttl {
    min-width: 0;
    width: 100%;
    letter-spacing: 0.1em;
  }
}
.privacy01 .info-box p {
  line-height: 1.8;
  text-align: center;
}
.privacy01 .info-box p span {
  display: inline-block;
  margin: 0 8rem;
}
.privacy01 .info-box p.tel-fax {
  margin: 10rem 0;
}
.privacy01 a {
  text-decoration: none;
  color: var(--color-black);
}

.privacy02 {
  background: var(--color-white);
}

.privacy01 .txt-area h3::before {
  display: none;
}
/*# sourceMappingURL=privacy.css.map */