@charset "UTF-8";
/***********************

カラー

***********************/
/***********************

サイズ

***********************/
/***********************

flex box

***********************/
/***********************

レスポンシブ

***********************/
/***********************

フォント

***********************/
/***********************
common
**********************/
html {
  height: 100%;
  font-size: 0.8333333333vw;
  overflow-x: hidden;
}
@media (769px <= width < 1001px) {
  html {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 1.953125vw;
  }
}
@media screen and (max-width: 450px) {
  html {
    font-size: 3.3333333333vw;
  }
}

body {
  width: 100%;
  max-height: 100%;
  letter-spacing: 1.5px;
  color: #000;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

p, h1, h2, h3, h4, span, li, a {
  letter-spacing: 1.5px;
  line-height: 1.8;
}

p {
  font-size: clamp(14px, 1rem, 16px);
}
@media screen and (max-width: 768px) {
  p {
    font-size: max(15px, 0.9375rem);
  }
}

h2 {
  margin-bottom: min(60px, 3.125vw);
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  h2 {
    margin-bottom: max(30px, 3.906vw);
  }
}
@media screen and (max-width: 450px) {
  h2 {
    margin-bottom: max(25px, 5.555vw);
  }
}

a {
  color: #000;
}

img {
  width: 100%;
  height: auto;
}

article {
  overflow-x: hidden;
}

section {
  padding: min(120px, 6.25vw) 0;
}
@media screen and (max-width: 768px) {
  section {
    padding-top: max(60px, 7.812vw);
    padding-bottom: max(60px, 7.812vw);
  }
}
@media screen and (max-width: 450px) {
  section {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.sp-br {
  display: none;
}
.pc-br {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp-br {
    display: inline;
  }
}
@media (min-width: 768px) {
  .pc-br {
    display: inline;
  }
}

/***********************
inner
**********************/
.inner {
  width: 100%;
  margin: 0 auto;
  padding-left: min(390px, 18vw);
  padding-right: min(390px, 18vw);
}
@media screen and (max-width: 768px) {
  .inner {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.inner02 {
  width: 100%;
  margin: 0 auto;
  padding-left: min(260px, 6.541vw);
  padding-right: min(260px, 6.541vw);
}
@media (769px <= width < 1001px) {
  .inner02 {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 768px) {
  .inner02 {
    max-width: 480px;
  }
}

.inner03 {
  width: 100%;
  padding-left: min(125px, 6.5104vw);
  padding-right: min(125px, 6.5104vw);
  margin: 0 auto;
}
@media (769px <= width < 1001px) {
  .inner03 {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/***********************
responsive
**********************/
.pc-only {
  display: block;
}
@media screen and (max-width: 450px) {
  .pc-only {
    display: none;
  }
}

.tab {
  display: none;
}
@media screen and (max-width: 768px) {
  .tab {
    display: block;
  }
}

.tab-none {
  display: block;
}
@media screen and (max-width: 768px) {
  .tab-none {
    display: none;
  }
}

.sp-only {
  display: none;
}
@media screen and (max-width: 450px) {
  .sp-only {
    display: block;
  }
}

/***********************
other
**********************/
/* 送信ローダーの位置調整 */
.wpcf7 .wpcf7-spinner {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.wpcf7-submit-block {
  position: relative;
  margin-bottom: 2em; /* 要調整(*1) */
}

.wpcf7-submit-block input[type=submit] {
  min-width: 200px;
}

/* 送信ローダークリック時 */
.wpcf7-submit.wpcf7-active {
  pointer-events: none;
  opacity: 0.5;
}/*# sourceMappingURL=base.css.map */