@charset "UTF-8";

/* ------------------------
base
------------------------ */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  margin: 0;
  padding: 0;
}

body {
  color: #000;
  background-color: #FFF;
  font-size: 16px;
  line-height: 2;
  font-family: "Helvetica Neue",
  Arial,
  "Hiragino Kaku Gothic ProN",
  "Hiragino Sans",
  Meiryo,
  sans-serif;
  font-weight: 400;
  font-style: normal;
  margin: 0 auto;
  text-align: center;
  position: relative;
  overflow-x: hidden;
}
@media screen and (max-width: 932px) {
  body {
    font-size: 14px;
  }
}

img {
  width: 100%;
  vertical-align: top;
  /* pointer-events: none; */
}

a {
  text-decoration: none;
}
a.opa {
  cursor: pointer;
  opacity: 1;
  transition: 0.3s;
}
a.opa:hover {
  opacity: .7;
}

h1, h2, h3, h4, h5, p {
  margin: 0;
  padding: 0;
}

ul {
  padding: 0;
  margin: 0;
}
ul li {
  list-style: none;
}

a {
  color: #221E1F;
}

.flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.note {
  font-size: 12px!important;
  font-weight: 400!important;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
}
.note::before {
  content: "※";
}

sup {
  vertical-align: super;
  font-size: 50%;
}

.cap {
  font-size: 12px!important;
}

.justify {
  text-align: justify;
  text-justify: inter-ideograph;
}

.inner-1000 {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.inner-1100 {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.inner-1200 {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.full {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

.left {
  text-align: left;
}
.center {
  text-align: center;
}
.right {
  text-align: right;
}

@media screen and (min-width: 933px) {
 .max-tl-only {
  display: none!important;
 }
}

@media screen and (min-width: 768px) {
  .sp-only {
    display: none!important;
  }
  a[href^="tel:"] {
    pointer-events: none;
  }
}

@media screen and (max-width: 932px) {
  .pc-only {
    display: none!important;
  }
  a.opa:hover {
    opacity: 1;
  }
  .sp-justify {
    text-align: justify;
    text-justify: inter-ideograph;
  }
  .sp-full {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }
  .sp-14 {
    font-size: 87.5%;
  }
}

@media print {
  .sp-only {
    display: none;
  }
}

/* margin */
.mt-0 { margin-top: 0!important; }
.mt-5 { margin-top: 5px; }
.mt-10 { margin-top: 10px; }
.mt-20 { margin-top: 20px; }
.mt-30 { margin-top: 30px; }
.mt-40 { margin-top: 40px; }
.mt-50 { margin-top: 50px; }
.mt-60 { margin-top: 60px; }
.mt-70 { margin-top: 70px; }
.mt-80 { margin-top: 80px; }
.mt-90 { margin-top: 90px;}
.mt-100 { margin-top: 100px; }
.mt-120 { margin-top: 120px; }
.mt-140 { margin-top: 140px; }
.mt-200 { margin-top: 200px }
.mb-0 { margin-bottom: 0!important; }
.mb-10 { margin-bottom: 10px; }
.mb-20 { margin-bottom: 20px; }
.mb-30 { margin-bottom: 30px; }
.mb-40 { margin-bottom: 40px; }
.mb-50 { margin-bottom: 50px; }
.mb-60 { margin-bottom: 60px; }
.mb-70 { margin-bottom: 70px; }
.mb-80 { margin-bottom: 80px; }
.mb-90 { margin-bottom: 90px; }
.mb-100 { margin-bottom: 100px; }
.mb-120 { margin-bottom: 120px; }
@media screen and (max-width: 932px) {
  /* .mt-10 { margin-top: 5px; }
  .mt-20 { margin-top: 10px; } */
  .mt-30 { margin-top: 15px; }
  .mt-40 { margin-top: 20px; }
  .mt-50 { margin-top: 25px; }
  .mt-60 { margin-top: 30px; }
  .mt-70 { margin-top: 35px; }
  .mt-80 { margin-top: 40px; }
  .mt-90 { margin-top: 90px;}
  .mt-100 { margin-top: 50px; }
  .mt-120 { margin-top: 60px; }
  .mt-140 { margin-top: 70px; }
  .mt-200 { margin-top: 100px }
  /* .mb-10 { margin-bottom: 5px; }
  .mb-20 { margin-bottom: 10px; } */
  .mb-30 { margin-bottom: 15px; }
  .mb-40 { margin-bottom: 20px; }
  .mb-50 { margin-bottom: 25px; }
  .mb-60 { margin-bottom: 30px; }
  .mb-70 { margin-bottom: 35px; }
  .mb-80 { margin-bottom: 40px; }
  .mb-90 { margin-bottom: 45px; }
  .mb-100 { margin-bottom: 50px; }
  .mb-120 { margin-bottom: 60px; }
}

/* padding */
.pt-0 { padding-top: 0!important; }
.pt-10 { padding-top: 10px; }
.pt-20 { padding-top: 20px; }
.pt-30 { padding-top: 30px; }
.pt-40 { padding-top: 40px; }
.pt-50 { padding-top: 50px; }
.pt-60 { padding-top: 60px; }
.pt-70 { padding-top: 70px; }
.pt-80 { padding-top: 80px; }
.pt-90 { padding-top: 90px;}
.pt-100 { padding-top: 100px; }
.pt-120 { padding-top: 120px; }
.pt-200 { padding-top: 200px; }
.pb-0 { padding-bottom: 0!important; }
.pb-10 { padding-bottom: 10px; }
.pb-20 { padding-bottom: 20px; }
.pb-30 { padding-bottom: 30px; }
.pb-40 { padding-bottom: 40px; }
.pb-50 { padding-bottom: 50px; }
.pb-60 { padding-bottom: 60px; }
.pb-70 { padding-bottom: 70px; }
.pb-80 { padding-bottom: 80px; }
.pb-90 { padding-bottom: 90px; }
.pb-100 { padding-bottom: 100px; }
.pb-120 { padding-bottom: 120px; }
.pb-140 { padding-bottom: 140px; }
@media screen and (max-width: 932px) {
  /* .pt-10 { padding-top: 5px; }
  .pt-20 { padding-top: 10px; } */
  .pt-30 { padding-top: 15px; }
  .pt-40 { padding-top: 20px; }
  .pt-50 { padding-top: 25px; }
  .pt-60 { padding-top: 30px; }
  .pt-70 { padding-top: 35px; }
  .pt-80 { padding-top: 40px; }
  .pt-90 { padding-top: 90px;}
  .pt-100 { padding-top: 50px; }
  .pt-120 { padding-top: 60px; }
  .pt-200 { padding-top: 100px; }
  /* .pb-10 { padding-bottom: 5px; }
  .pb-20 { padding-bottom: 10px; } */
  .pb-30 { padding-bottom: 15px; }
  .pb-40 { padding-bottom: 20px; }
  .pb-50 { padding-bottom: 25px; }
  .pb-60 { padding-bottom: 30px; }
  .pb-70 { padding-bottom: 35px; }
  .pb-80 { padding-bottom: 40px; }
  .pb-90 { padding-bottom: 45px; }
  .pb-100 { padding-bottom: 50px; }
  .pb-120 { padding-bottom: 60px; }
  .pb-140 { padding-bottom: 70px; }
}
.ptpb-100 {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 932px) {
  .ptpb-100 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.plpr-20 {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 932px) {
  .sp-plpr-20 {
    padding-left: 20px;
    padding-right: 20px;
  }
}


/* ------------------------
header
------------------------ */


/* ------------------------
main
------------------------ */


/* ------------------------
footer
------------------------ */
footer .logo-area img {
  width: 320px;
}
@media screen and (max-width: 932px) {
  footer .logo-area img {
    width: 200px;
  }
}
