@charset "UTF-8";
/*------------------------------------------------------
    Top page用scss
------------------------------------------------------*/
/*------------------------------------------------------
    Breakpoint　値はサイトに合わせて変更しましょう
------------------------------------------------------*/
/*------------------------------------------------------
    このファイルは基本触らない
------------------------------------------------------*/
/*------------------------------------------------------
    color format (カラー設定)
------------------------------------------------------*/
/*------------------------------------------------------
    color format (カラー設定)
------------------------------------------------------*/
/*------------------------------------------------------
    Top page用scss
------------------------------------------------------*/
/*------------------------------------------------------
    Top page用scss
------------------------------------------------------*/
/*------------------------------------------------------
    Top page用scss
------------------------------------------------------*/
.maintitle {
  font-size: 60px;
  color: blue;
}

.subtitle {
  font-size: 40px;
  color: red;
}

.lower__mv {
  position: relative;
  z-index: 2;
  padding: 230px 120px 375px 120px;
  padding-top: clamp(180px, 11.9791666667vw, 230px);
  padding-bottom: clamp(275px, 19.53125vw, 375px);
  padding-left: clamp(20px, 5.3333333333vw, 120px);
}
.lower__mv__container {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
}
.lower__mv__container .lower__mv__content .lower__mv__title {
  font-family: "Oooh Baby", cursive;
  color: #262626;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.lower__mv__container .lower__mv__content .lower__mv__title__en {
  font-size: clamp(32px, 6vw, 60px);
  font-family: "Aboreto", sans-serif;
  color: #262626;
}
.lower__mv__container .lower__mv__content .lower__mv__title__ja {
  font-size: clamp(18px, 3vw, 30px);
  font-family: "Sawarabi Mincho", sans-serif;
  letter-spacing: 0.1em;
  color: #262626;
}
.lower__mv__container .lower__mv__content .breadcrumb {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 27px;
}
.lower__mv__container .lower__mv__content .breadcrumb__link {
  font-size: 13px;
  color: #909090;
}
.lower__mv__container .lower__mv__content .breadcrumb__separator {
  font-size: 13px;
  color: #909090;
}
.lower__mv__container .lower__mv__content .breadcrumb__current {
  font-size: 13px;
  color: #909090;
}
.lower__mv__container .lower__mv__image__wrap {
  width: 100%;
  position: absolute;
  top: -56px;
  right: 0;
  z-index: -1;
}
.lower__mv__container .lower__mv__image__wrap .lower__mv__image1 {
  width: clamp(400px, 38.3333333333vw, 621px);
  aspect-ratio: 621/417;
  object-fit: cover;
  position: absolute;
  top: 0;
  right: 0;
}
.lower__mv__container .lower__mv__image__wrap .lower__mv__image2 {
  width: clamp(200px, 21.8518518519vw, 354px);
  aspect-ratio: 354/470;
  object-fit: cover;
  position: absolute;
  top: 134px;
  right: clamp(-120px, -13.024691358vw, -211px);
}
@media screen and (max-width: 768px) {
  .lower__mv {
    padding: 100px 20px clamp(30px, 15.1041666667vw, 116px) 20px;
  }
  .lower__mv__container .lower__mv__content .breadcrumb {
    margin-top: 56px;
  }
  .lower__mv__container .lower__mv__image__wrap {
    top: -7px;
    right: 40px;
  }
  .lower__mv__container .lower__mv__image__wrap .lower__mv__image1 {
    width: clamp(185px, 49.3333333333vw, 400px);
  }
  .lower__mv__container .lower__mv__image__wrap .lower__mv__image2 {
    width: clamp(104px, 27.7333333333vw, 200px);
    top: 32px;
    right: -60px;
  }
}
.lower__mv {
  padding-bottom: clamp(200px, 19.53125vw, 375px);
}
@media screen and (max-width: 768px) {
  .lower__mv {
    padding-bottom: 50px;
  }
}

.download__content {
  background: #FBFBFB;
  padding: clamp(100px, 13.8888888889vw, 200px) 40px 60px;
  margin-top: clamp(-100px, -5.2083333333vw, -50px);
}
.download__content__container {
  max-width: 1200px;
  margin: 0 auto;
  background: #fff;
}
.download__content__container .download__content__item {
  max-width: 874px;
  margin: 0 auto;
  padding: 80px 20px;
}
.download__content__container .download__content__item .download__content__item__title {
  font-size: clamp(25px, 1.9444444444vw, 28px);
  color: #262626;
  text-align: center;
  margin-bottom: 10px;
}
.download__content__container .download__content__item .download__content__item__text {
  font-size: clamp(16px, 1.25vw, 18px);
  text-align: center;
  margin-bottom: clamp(48px, 4.7222222222vw, 68px);
}
.download__content__container .download__content__item .download__content__item__wrap {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
.download__content__container .download__content__item .download__content__item__wrap .download__content__item__image {
  width: 50%;
}
.download__content__container .download__content__item .download__content__item__wrap .download__content__item__inner {
  width: calc(50% - 60px);
  display: flex;
  flex-direction: column;
}
.download__content__container .download__content__item .download__content__item__wrap .download__content__item__inner__label {
  width: clamp(74px, 16.6666666667vw, 128px);
  font-size: clamp(16px, 2.6041666667vw, 20px);
  font-weight: 500;
  color: #262626;
  margin-bottom: 10px;
  padding: 6px 0;
  text-align: center;
  border: 1px solid #262626;
}
.download__content__container .download__content__item .download__content__item__wrap .download__content__item__inner__title {
  flex-grow: 1;
  font-size: clamp(25px, 4.2vw, 42px);
  line-height: 1.3;
  color: #262626;
}
.download__content__container .download__content__item .download__content__item__wrap .download__content__item__inner__text {
  font-size: clamp(16px, 2.6041666667vw, 20px);
  color: #262626;
}
@media screen and (max-width: 768px) {
  .download__content {
    padding: 40px 20px 20px;
    margin-top: clamp(0px, -76px + 20.4vw, 100px);
  }
  .download__content__container .download__content__item {
    padding: 20px 16px;
  }
  .download__content__container .download__content__item .download__content__item__title {
    text-align: left;
    margin-bottom: 17px;
  }
  .download__content__container .download__content__item .download__content__item__text {
    text-align: left;
    margin-bottom: 17px;
  }
  .download__content__container .download__content__item .download__content__item__wrap {
    flex-direction: column;
    gap: 14px;
  }
  .download__content__container .download__content__item .download__content__item__wrap .download__content__item__image {
    width: 100%;
  }
  .download__content__container .download__content__item .download__content__item__wrap .download__content__item__inner {
    width: 100%;
  }
  .download__content__container .download__content__item .download__content__item__wrap .download__content__item__inner__label {
    margin-bottom: 5px;
    padding: 3px 0;
  }
  .download__content__container .download__content__item .download__content__item__wrap .download__content__item__inner__title {
    margin-bottom: 5px;
  }
}

.download__form {
  padding: 100px 40px clamp(100px, 13.8888888889vw, 200px);
  background: #FBFBFB;
}
.download__form__container {
  max-width: 1200px;
  margin: 0 auto;
}
.download__form__container .requirements__form__title {
  font-size: clamp(22px, 3.3333333333vw, 48px);
  font-weight: bold;
  color: #092D23;
  margin-bottom: clamp(20px, 2.5vw, 36px);
  text-align: center;
  font-family: "Sawarabi Mincho", sans-serif;
}
.download__form__container .requirements__form__text {
  font-size: clamp(14px, 1.25vw, 18px);
  text-align: center;
}
.download__form__container form {
  display: flex;
  flex-direction: column;
  gap: clamp(22px, 6.5104166667vw, 50px);
}
.download__form__container form .requirements__form__item {
  display: flex;
  align-items: center;
}
.download__form__container form .requirements__form__item__wrap {
  width: clamp(230px, 18.0555555556vw, 260px);
  flex-shrink: 0;
  display: flex;
  gap: 16px;
  align-items: center;
}
.download__form__container form .requirements__form__item__wrap .requirements__form__item__label {
  font-size: clamp(18px, 1.4583333333vw, 28px);
  color: #262626;
  position: relative;
}
.download__form__container form .requirements__form__item__wrap .requirements__form__item__label::after {
  content: "任意";
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #909090;
  padding: 0 7px 1px;
  position: absolute;
  right: -15px;
  top: 50%;
  transform: translate(100%, -50%);
}
.download__form__container form .requirements__form__item .wpcf7-form-control-wrap {
  width: 100%;
  flex-grow: 1;
}
.download__form__container form .requirements__form__item .wpcf7-form-control-wrap input, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap textarea, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap select {
  width: 100%;
  padding: clamp(7px, 0.9722222222vw, 14px) clamp(10px, 0.9722222222vw, 14px) clamp(6px, 0.9027777778vw, 13px);
  background: #FCFCFC;
  border: 1px solid #BCB9B9;
  font-size: clamp(12px, 1.0416666667vw, 20px);
  font-weight: 500;
  color: #262626;
  box-sizing: border-box;
  resize: none;
}
.download__form__container form .requirements__form__item .wpcf7-form-control-wrap input::placeholder, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap textarea::placeholder, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap select::placeholder {
  color: #C1C1C1;
}
.download__form__container form .requirements__form__item .wpcf7-form-control-wrap input.wpcf7-not-valid, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap textarea.wpcf7-not-valid, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap select.wpcf7-not-valid {
  border: 1px solid #E55F5F;
}
.download__form__container form .requirements__form__item .wpcf7-form-control-wrap .wpcf7-select {
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("../img/requirements/form_arrow.svg");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 12px;
}
.download__form__container form .requirements__form__item .requirements__form__item__sei,
.download__form__container form .requirements__form__item .requirements__form__item__mei {
  font-size: clamp(12px, 1.0416666667vw, 20px);
  margin: 0 14px 0 0;
}
.download__form__container form .requirements__form__item .requirements__form__item__mei {
  margin: 0 14px 0 16px;
}
.download__form__container form .requirements__form__item .wpcf7-not-valid-tip {
  font-size: clamp(12px, 0.9375vw, 18px);
  font-weight: 500;
  color: #E55F5F;
}
.download__form__container form .requirements__form__item--message {
  align-items: flex-start;
}
.download__form__container form .requirements__form__item.required .requirements__form__item__wrap .requirements__form__item__label::after {
  content: "必須";
  background: #E55F5F;
}
.download__form__container form .wpcf7-acceptance {
  display: flex;
  justify-content: center;
  margin: clamp(10px, 2.7777777778vw, 40px) 0 0;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label input {
  margin: 0;
  display: none;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label::before {
  content: "";
  display: inline-block;
  flex-shrink: 0;
  width: clamp(16px, 1.6666666667vw, 24px);
  height: clamp(16px, 1.6666666667vw, 24px);
  border: 1px solid #BCB9B9;
  box-sizing: border-box;
  background: #fff;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  left: clamp(2px, 0.2777777778vw, 4px);
  top: 50%;
  transform: translateY(-50%);
  font-size: clamp(12px, 0.9722222222vw, 14px);
  color: #fff;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label .requirements__form__acceptance {
  font-size: clamp(16px, 1.0416666667vw, 20px);
  color: #262626;
  text-align: center;
  white-space: nowrap;
  text-shadow: 0px 0px 4px white, 0px 0px 4px white, 0px 0px 4px white, 0px 0px 4px white, 0px 0px 4px white, 0px 0px 4px white, 0px 0px 4px white, 0px 0px 4px white, 0px 0px 4px white;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label .requirements__form__acceptance a {
  color: #262626;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1.3px;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label input:checked + .wpcf7-list-item-label::before {
  background: #1AA982;
  border-color: #1AA982;
}
.download__form__container form .wpcf7-acceptance .wpcf7-list-item label input:checked + .wpcf7-list-item-label::after {
  background-image: url("../img/download/check_white.svg");
  width: clamp(12px, 1.1111111111vw, 16px);
  height: clamp(12px, 1.1111111111vw, 16px);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.download__form__container form .requirements__form__submit {
  display: flex;
  justify-content: center;
  align-items: center;
}
.download__form__container form .requirements__form__submit__inner {
  position: relative;
}
.download__form__container form .requirements__form__submit__inner .wpcf7-submit {
  width: clamp(222px, 17.1875vw, 275px);
  height: clamp(58px, 4.5vw, 72px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border-radius: 10px;
  border: none;
  background: linear-gradient(130deg, #1AA982 10%, #AFCA54 50%, #AFCA54 80%);
  padding-right: 26px;
  background-size: 200% 100%;
  background-position: 0% 50%;
  transition: background-position 0.5s ease;
  font-size: clamp(15px, 1.125vw, 18px);
  font-weight: bold;
  color: #FFFFFF;
}
.download__form__container form .requirements__form__submit__inner .requirements__form__submit__arrow {
  background: url("../img/download/download_arrow.svg") no-repeat center center/cover;
  width: 21px;
  height: 21px;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  pointer-events: none;
  transition: all 0.3s ease;
  cursor: pointer;
}
@media (any-hover: hover) {
  .download__form__container form .requirements__form__submit__inner:hover .requirements__form__submit__arrow {
    transform: translateY(-50%) translateX(12px);
  }
}
@media (any-hover: hover) {
  .download__form__container form .requirements__form__submit .wpcf7-submit:hover {
    background-position: 20% 50%;
  }
}
.download__form__container form .requirements__form__submit .wpcf7-spinner {
  display: none;
}
.download__form__container form.invalid .wpcf7-response-output {
  width: 100%;
  max-width: 480px;
  text-align: center;
  padding: 24px 0;
  margin: 0 auto;
  font-size: clamp(16px, 1.0416666667vw, 20px);
  background: #fff;
  color: #E55F5F;
  border-color: #E55F5F;
}
@media screen and (max-width: 768px) {
  .download__form {
    padding: 46px 20px 56px 20px;
  }
  .download__form__container form {
    gap: 20px;
  }
  .download__form__container form .requirements__form__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
  .download__form__container form .requirements__form__item .wpcf7-form-control-wrap input, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap textarea, .download__form__container form .requirements__form__item .wpcf7-form-control-wrap select {
    font-size: 12px;
  }
  .download__form__container form .requirements__form__item:first-of-type {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    row-gap: 4px;
  }
  .download__form__container form .requirements__form__item:first-of-type .requirements__form__item__wrap {
    width: 100%;
  }
  .download__form__container form .requirements__form__item:first-of-type .wpcf7-form-control-wrap {
    width: calc(50% - 34px);
  }
  .download__form__container form .requirements__form__item:first-of-type .requirements__form__item__sei {
    margin: 0 7px 0 0;
  }
  .download__form__container form .requirements__form__item:first-of-type .requirements__form__item__mei {
    margin: 0 7px 0 15px;
  }
  .download__form__container form .wpcf7-acceptance {
    margin: 27px 0 24px;
  }
  .download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label {
    align-items: flex-start;
  }
  .download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label::before {
    position: relative;
    top: 5px;
  }
  .download__form__container form .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label::after {
    top: 11px;
    left: 3px;
  }
}