@charset "UTF-8";
.mainColor {
  color: #0091DB;
}

.blue {
  color: #0091DB;
}

.subColor {
  color: #FFA200;
}

.white {
  color: #ffffff;
}

.black {
  color: #333333;
}

.red {
  color: #FF0000;
}

.orange {
  color: #FFA200;
}

.gray {
  color: #EAEAEA;
}

.grayDark {
  color: #505050;
}

.grayLight {
  color: #BEBEBE;
}

li {
  list-style-type: none;
}

/*- 文字サイズ自動変更--------------------*/
/*- 文字サイズ記述見本----------*/
/*
p {
  @include module.fs(36,36,24,20,18,18);
}
p {
  @include fs2(20,10);
    @include module.fs2(36, 20);
}
*/
/*- 表示非表示-------------------*/
/* visible-xx-ijo */
@media (max-width: 575px) {
  .visible-sm-ijo {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .visible-md-ijo {
    display: none !important;
  }
}
@media (max-width: 991px) {
  .visible-lg-ijo {
    display: none !important;
  }
}
@media (max-width: 1199px) {
  .visible-xl-ijo {
    display: none !important;
  }
}
/* visible-xx-ika */
@media (min-width: 576px) {
  .visible-xs-ika {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .visible-sm-ika {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .visible-md-ika {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-ika {
    display: none !important;
  }
}
@media (min-width: 1400px) {
  .visible-xl-ika {
    display: none !important;
  }
}
/* hidden-xx-ijo */
@media (min-width: 576px) {
  .hidden-sm-ijo {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .hidden-md-ijo {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .hidden-lg-ijo {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-xl-ijo {
    display: none !important;
  }
}
/* hidden-xx-ika */
@media (max-width: 575px) {
  .hidden-xs-ika {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .hidden-sm-ika {
    display: none !important;
  }
}
@media (max-width: 991px) {
  .hidden-md-ika {
    display: none !important;
  }
}
@media (max-width: 1199px) {
  .hidden-lg-ika {
    display: none !important;
  }
}
@media (max-width: 1399px) {
  .hidden-xl-ika {
    display: none !important;
  }
}
/*- 基本パーツ-------------------*/
.align-center {
  text-align: center;
}

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

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

.align-center-pc {
  text-align: center;
}

@media (max-width: 767px) {
  .align-center-pc {
    text-align: left;
  }
}
.flex-center {
  display: flex;
  justify-content: center;
}

.bold {
  font-weight: bold;
}

small {
  font-size: smaller !important;
}

.lh-2 {
  line-height: 2;
}
@media screen and (max-width: 991px) {
  .lh-2 {
    line-height: 1.8;
  }
}
@media screen and (max-width: 767px) {
  .lh-2 {
    line-height: 1.6;
  }
}

.img-responsive {
  display: inline-block;
  height: auto;
  max-width: 100%;
}

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

.cf::before, .cf::after {
  display: table;
  clear: both;
  content: "";
}

.alpha {
  transition: opacity 250ms;
}
.alpha:hover {
  opacity: 0.75;
}

.indent1 li,
p.indent1 {
  padding-left: 1em;
  text-indent: -1em;
}

.indent2 li,
p.indent2 {
  padding-left: 2em;
  text-indent: -2em;
}

.indent3 li,
p.indent3 {
  padding-left: 3em;
  text-indent: -3em;
}

/*-hover------------------*/
.hover a {
  -webkit-transition: 350ms;
  transition: 350ms;
}

.hover a:hover {
  opacity: 0.7;
}

a.hover {
  -webkit-transition: 350ms;
  transition: 350ms;
}

a.hover:hover {
  opacity: 0.7;
}

button.hover {
  -webkit-transition: 350ms;
  transition: 350ms;
}

button.hover:hover {
  opacity: 0.7;
}

input.hover {
  -webkit-transition: 350ms;
  transition: 350ms;
}

input.hover:hover {
  opacity: 0.7;
}

a.underline {
  text-decoration: underline;
}

a.underline:hover {
  text-decoration: none;
}

.box-shadow {
  transition: all 0.4s ease-in-out;
}

.box-shadow:hover {
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.3);
}

.mojikan {
  font-feature-settings: "palt";
  letter-spacing: 3px;
}

/*- カラム落ちメモ3----grid利用--------------------*/
/*- parts-width-----------------*/
.pc-w95 {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .pc-w95 {
    width: 95%;
  }
}

.pc-w90 {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .pc-w90 {
    width: 90%;
  }
}

.pc-w85 {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .pc-w85 {
    width: 85%;
  }
}

.pc-w80 {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .pc-w80 {
    width: 80%;
  }
}

.pc-w70 {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .pc-w70 {
    width: 70%;
  }
}

.pc-w60 {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .pc-w60 {
    width: 60%;
  }
}

/*- parts-grid-----------------*/
.grid-pcsp2 {
  width: 100%;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2rem;
  row-gap: 2rem;
}
@media screen and (min-width: 768px) {
  .grid-pcsp2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1rem;
    row-gap: 1rem;
  }
}

/*bghover-------------------------------------------*/
.bghover-link {
  display: block;
}

.bghover-warp {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

.bghover {
  width: 100%;
  padding-top: 55%;
  margin: 0 auto;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transition: all 0.8s;
  -moz-transition: all 0.8s;
  -o-transition: all 0.8s;
  transition: all 0.8s;
}

a.bghover-link:hover .bghover-warp .bghover,
.bghover-warp:focus .bghover {
  -ms-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}

a.bghover-link:hover .bghover-warp .bghover:before,
.bghover-warp:focus .bghover:before {
  display: block;
}

.bghover:before {
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
  opacity: 0;
  -webkit-transition: 0.35s ease;
  transition: 0.5s ease;
}

a.bghover-link:hover .bghover-warp .bghover:before {
  opacity: 0.3;
}

.subvisual-contact .basic-title {
  margin-top: 3rem;
}

.section-contact .contact-text-block {
  margin: 4rem auto 3rem;
}
.section-contact .contact-text-block .contact-info-title {
  font-weight: 500;
  margin-bottom: 2rem;
  line-height: 1.6;
}
@media only screen and (min-width: 1200px) {
  .section-contact .contact-text-block .contact-info-title {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-contact .contact-text-block .contact-info-title {
    font-size: calc(1.76rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-contact .contact-text-block .contact-info-title {
    font-size: calc(1.72rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-contact .contact-text-block .contact-info-title {
    font-size: calc(1.68rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-contact .contact-text-block .contact-info-title {
    font-size: calc(1.64rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-contact .contact-text-block .contact-info-title {
    font-size: calc(1.6rem + ((1vw - 0.32rem) * (0.4)));
  }
}
.section-contact .contact-text-block .contact-text-inner {
  margin-bottom: 3rem;
  display: flex;
  justify-content: center;
}
.section-contact .contact-text-block .contact-text-inner .contact-info {
  width: 100%;
  padding: 2rem 3rem;
  background-color: #f9f9f9;
}
@media screen and (max-width: 991px) {
  .section-contact .contact-text-block .contact-text-inner .contact-info {
    padding: 2rem 1.5rem;
  }
}
.section-contact .contact-text-block .contact-text-inner p {
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1200px) {
  .section-contact .contact-text-block .contact-text-inner p {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-contact .contact-text-block .contact-text-inner p {
    font-size: calc(1.48rem + ((1vw - 0.992rem) * (0.0966183575)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-contact .contact-text-block .contact-text-inner p {
    font-size: calc(1.46rem + ((1vw - 0.768rem) * (0.0896860987)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-contact .contact-text-block .contact-text-inner p {
    font-size: calc(1.44rem + ((1vw - 0.576rem) * (0.1047120419)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-contact .contact-text-block .contact-text-inner p {
    font-size: calc(1.42rem + ((1vw - 0.421rem) * (0.1298701299)));
  }
}
@media only screen and (max-width: 420px) {
  .section-contact .contact-text-block .contact-text-inner p {
    font-size: calc(1.4rem + ((1vw - 0.32rem) * (0.2)));
  }
}
.section-contact .contact-text-block .contact-text-inner p:last-child {
  margin-bottom: 0;
}
.section-contact .contact-text-block .contact-text-inner p .bold {
  display: inline-block;
  margin-bottom: 0.5rem;
}
.section-contact .contact-text-block .contact-text-inner a {
  display: inline-block;
}
.section-contact .contact-text-block .contact-text-inner .hissu {
  display: inline-block;
  margin-right: 3px;
  line-height: 1.8;
  font-size: 12px;
  background-color: #ff0000;
  color: #fff;
  border-radius: 5px;
  font-weight: normal;
  padding: 0px 4px;
}
@media screen and (max-width: 767px) {
  .section-contact .contact-text-block .contact-text-inner .hissu {
    right: 10px;
  }
}
.section-contact .contact-block {
  /* 入力系 */
}
.section-contact .contact-block dl {
  width: 100%;
  border-bottom: 1px solid #bfbfbf;
}
@media screen and (min-width: 768px) {
  .section-contact .contact-block dl {
    display: table;
  }
}
.section-contact .contact-block dt {
  position: relative;
  padding: 2rem 40px 2rem 0px;
}
@media screen and (min-width: 768px) {
  .section-contact .contact-block dt {
    display: table-cell;
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  .section-contact .contact-block dt {
    background-color: #eee;
    padding: 1rem 40px 1rem 1rem;
    max-width: 100vw;
    width: 100%;
  }
}
.section-contact .contact-block dd {
  padding: 2rem 0;
}
@media screen and (min-width: 768px) {
  .section-contact .contact-block dd {
    display: table-cell;
    width: 70%;
    padding-left: 3rem;
  }
}
.section-contact .contact-block .hissu {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 0;
  font-size: 12px;
  background-color: #ff0000;
  color: #fff;
  border-radius: 5px;
  font-weight: normal;
  padding: 0px 4px;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .section-contact .contact-block .hissu {
    right: 10px;
  }
}
.section-contact .contact-block .hissu.hissu-30 {
  top: 30%;
}
@media screen and (max-width: 767px) {
  .section-contact .contact-block .hissu.hissu-30 {
    top: 50%;
  }
}
.section-contact .contact-block .hissu.hissu-25 {
  top: 25%;
}
@media screen and (max-width: 767px) {
  .section-contact .contact-block .hissu.hissu-25 {
    top: 50%;
  }
}
.section-contact .contact-block .hissu.hissu-20 {
  top: 20%;
}
@media screen and (max-width: 767px) {
  .section-contact .contact-block .hissu.hissu-20 {
    top: 50%;
  }
}
.section-contact .contact-block input[type=text],
.section-contact .contact-block input[type=email],
.section-contact .contact-block input[type=tel],
.section-contact .contact-block input[type=url],
.section-contact .contact-block input[type=number],
.section-contact .contact-block textarea,
.section-contact .contact-block select {
  max-width: 100%;
  padding: 5px;
  -webkit-transition: outline-color 100ms;
  transition: outline-color 100ms;
  border: 1px solid #d3d3d3;
  border-radius: 5px;
  outline: 2px solid transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.section-contact .contact-block input[type=text]:active,
.section-contact .contact-block input[type=email]:active,
.section-contact .contact-block input[type=tel]:active,
.section-contact .contact-block input[type=url]:active,
.section-contact .contact-block input[type=number]:active,
.section-contact .contact-block textarea:active,
.section-contact .contact-block select:active,
.section-contact .contact-block input[type=tel]:focus,
.section-contact .contact-block input[type=text]:focus,
.section-contact .contact-block input[type=email]:focus,
.section-contact .contact-block input[type=url]:focus,
.section-contact .contact-block input[type=number]:focus,
.section-contact .contact-block textarea:focus,
.section-contact .contact-block select:focus {
  outline-color: #add6ff;
}
.section-contact .contact-block textarea {
  width: 100%;
}
.section-contact .contact-block select {
  appearance: auto;
}
.section-contact .contact-block .contact-policy {
  margin-top: 3rem;
}
.section-contact .contact-block .contact-policy p {
  margin-top: 1rem;
}
.section-contact .contact-block .contact-btn {
  margin: 3rem 0;
}
.section-contact .contact-block .contact-btn input[type=submit] {
  background-color: #0091DB;
  color: #fff;
  font-weight: 500;
  padding: 1rem 4rem;
  -webkit-transition: 350ms;
  transition: 350ms;
  border-radius: 10px;
}
@media only screen and (min-width: 1200px) {
  .section-contact .contact-block .contact-btn input[type=submit] {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-contact .contact-block .contact-btn input[type=submit] {
    font-size: calc(1.76rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-contact .contact-block .contact-btn input[type=submit] {
    font-size: calc(1.72rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-contact .contact-block .contact-btn input[type=submit] {
    font-size: calc(1.68rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-contact .contact-block .contact-btn input[type=submit] {
    font-size: calc(1.64rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-contact .contact-block .contact-btn input[type=submit] {
    font-size: calc(1.6rem + ((1vw - 0.32rem) * (0.4)));
  }
}
.section-contact .contact-block .contact-btn input[type=submit]:hover {
  opacity: 0.7;
}
.section-contact .contact-block .wpcf7-spinner {
  display: block;
  margin: 0 auto;
}
.section-contact .contact-block .wpcf7-list-item {
  margin-left: 0;
}

.section-campaign .contact-info-title {
  text-align: center;
}
.section-campaign .wpcf7-checkbox {
  display: flex;
  flex-direction: column;
  gap: 0.5rem 0;
  margin-left: 0;
}
.section-campaign .wpcf7-checkbox label {
  display: flex;
  align-items: flex-start;
}
.section-campaign .wpcf7-checkbox label input {
  display: block;
  margin: 5px 5px 0 0;
}
.section-campaign .campaign-policy .policy {
  padding: 0 1rem;
  margin-bottom: 2rem;
}
@media screen and (min-width: 768px) {
  .section-campaign .campaign-policy .policy {
    width: 80%;
    margin: 0 auto 2rem;
  }
}
.section-campaign .campaign-policy .policy .policy__wrapper {
  border: 1px solid #707070;
  padding: 2rem;
  box-sizing: border-box;
  height: 360px;
  overflow-y: scroll;
}
@media screen and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper {
    padding: 1rem;
  }
}
.section-campaign .campaign-policy .policy .policy__wrapper .policy__title {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #333333;
  color: #0091DB;
  font-weight: 500;
}
@media only screen and (min-width: 1200px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__title {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__title {
    font-size: calc(1.76rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__title {
    font-size: calc(1.72rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__title {
    font-size: calc(1.68rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__title {
    font-size: calc(1.64rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__title {
    font-size: calc(1.6rem + ((1vw - 0.32rem) * (0.4)));
  }
}
.section-campaign .campaign-policy .policy .policy__wrapper .policy__subtitle {
  font-weight: 500;
}
@media only screen and (min-width: 1200px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__subtitle {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__subtitle {
    font-size: calc(1.56rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__subtitle {
    font-size: calc(1.52rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__subtitle {
    font-size: calc(1.48rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__subtitle {
    font-size: calc(1.44rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__subtitle {
    font-size: calc(1.4rem + ((1vw - 0.32rem) * (0.4)));
  }
}
@media only screen and (min-width: 1200px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__text {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__text {
    font-size: calc(1.36rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__text {
    font-size: calc(1.32rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__text {
    font-size: calc(1.28rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__text {
    font-size: calc(1.24rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__text {
    font-size: calc(1.2rem + ((1vw - 0.32rem) * (0.4)));
  }
}
.section-campaign .campaign-policy .policy .policy__wrapper .policy__list {
  margin-bottom: 3rem;
}
.section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
  margin-left: 1.5rem;
}
@media only screen and (min-width: 1200px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
    font-size: calc(1.36rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
    font-size: calc(1.32rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
    font-size: calc(1.28rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
    font-size: calc(1.24rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
    font-size: calc(1.2rem + ((1vw - 0.32rem) * (0.4)));
  }
}
@media screen and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__list .policy__item {
    margin-left: 1rem;
  }
}
.section-campaign .campaign-policy .policy .policy__wrapper .policy__textbox {
  margin-bottom: 3rem;
  font-weight: 500;
  text-align: right;
}
@media only screen and (min-width: 1200px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__textbox {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__textbox {
    font-size: calc(1.36rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__textbox {
    font-size: calc(1.32rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__textbox {
    font-size: calc(1.28rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__textbox {
    font-size: calc(1.24rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__textbox {
    font-size: calc(1.2rem + ((1vw - 0.32rem) * (0.4)));
  }
}
.section-campaign .campaign-policy .policy .policy__wrapper .policy__attn {
  color: #707070;
}
@media only screen and (min-width: 1200px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__attn {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__attn {
    font-size: calc(1.16rem + ((1vw - 0.992rem) * (0.193236715)));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__attn {
    font-size: calc(1.12rem + ((1vw - 0.768rem) * (0.1793721973)));
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__attn {
    font-size: calc(1.08rem + ((1vw - 0.576rem) * (0.2094240838)));
  }
}
@media only screen and (min-width: 421px) and (max-width: 575px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__attn {
    font-size: calc(1.04rem + ((1vw - 0.421rem) * (0.2597402597)));
  }
}
@media only screen and (max-width: 420px) {
  .section-campaign .campaign-policy .policy .policy__wrapper .policy__attn {
    font-size: calc(1rem + ((1vw - 0.32rem) * (0.4)));
  }
}
.section-campaign .campaign-policy .policy .policy__wrapper .policy__attn p + p {
  margin-top: 0;
}
.section-campaign .policy__check {
  display: flex;
  justify-content: center;
  align-self: center;
}
.section-campaign .policy__check .hissu {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 21px;
  width: 34px;
  position: static;
  transform: none;
  margin-left: 2rem;
}
@media screen and (max-width: 767px) {
  .section-campaign .policy__check .hissu {
    margin-left: 1rem;
  }
}

body#thanks .form-button-back {
  margin: 3rem auto 4rem;
  display: block;
  width: fit-content;
  background-color: #0091DB;
  color: #fff;
  text-align: center;
  padding: 1rem 4rem;
  border-radius: 40px;
  text-decoration: none;
  transition: 350ms;
}
body#thanks .form-button-back:hover {
  opacity: 0.7;
}

/* 全体のコンテナ */
.campaign-container {
  display: flex !important;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .campaign-container .campaign-title {
    margin-bottom: 1rem;
  }
}

/* 1キャンペーン分の塊 */
.campaign-row {
  display: contents; /* dlの構造を維持しつつ横並びにするため */
}
@media screen and (max-width: 767px) {
  .campaign-row {
    display: block;
    max-width: 100vw;
    width: 100%;
  }
}
.campaign-row + .campaign-row dd {
  border-top: 1px solid #bfbfbf;
}

/* 区切り線 */
/* 詳細エリア（字下げ） */
.campaign-details {
  margin-top: 1rem;
}

/* 「購入商品」などの内訳ラベル */
.detail-item {
  display: flex;
  margin-left: 2rem;
  align-items: center;
}
.detail-item + .detail-item {
  margin-top: 1rem;
}
.detail-item .wpcf7-list-item {
  margin-left: 1rem !important;
}

.detail-label {
  display: block;
  margin-bottom: 0.5rem;
}

/* セレクトボックスの見た目 */
.campaign-details select {
  border: 1px solid red;
  padding: 4px;
  width: 250px;
}

select option:disabled {
  color: #ffffff; /* 文字を薄いグレーにする */
  background-color: #aaaaaa;
}

/*# sourceMappingURL=contact.css.map */
