@charset "utf-8";
/*	レイアウト
---------------------------------*/
html {
  font-size: 62.5%;
}
body {
  position: relative;
  width: 100%;
  background: #fff5d3;
  line-height: 1.6;
  color: #fff;
  font-style: normal;
  font-family: 'Noto Sans JP', sans-serif;
}
.cmn-content__wrap {
  margin: 0 auto;
  width: 100%;
  max-width: 750px;
  background: #A40108;
  box-shadow: 0 0 25px 0 rgba(0, 0, 0, .25);
}
body .js-accordion__box {
  display: none;
}
/*	ヘッダー
---------------------------------*/
header {
  width: 100%;
  line-height: 1;
  z-index: 1010;
}
.header-content {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
.header-content__logo {
  position: relative;
  margin: 0;
  width: calc(207 / 375 * 100%);
}
.header-content__menu {
  width: calc(168 / 375 * 100%);
  background: #FABE00;
}
.header-content__menu__link {
  display: flex;
  align-items: center;
  position: relative;
  padding: calc(8 / 168 * 100%) 0 calc(8 / 168 * 100%) calc(24 / 168 * 100%);
  width: 100%;
  height: 100%;
  color: #000;
}
.header-content__menu__link::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(10 / 168 * 100%);
  transform: translateY(-50%);
  width: calc(30 / 168 * 100%);
  aspect-ratio: 33/41;
  background: url(../img/icon_pointer01.svg) no-repeat center center / contain;
}
.header-content__menu__contact {
  width: 100%;
}
.header-content__menu__contact__ttl {
  display: flex;
  gap: min(10px, calc(4 / 144 * 100vw));
  margin-bottom: calc(5 / 144 * 100%);
  font-size: min(3.6rem, calc(18 / 375 * 100vw));
  font-weight: 600;
  letter-spacing: -0.05em;
}
.header-content__menu__contact__ttl::before {
  content: "";
  width: calc(18 / 144 * 100%);
  aspect-ratio: 1/1;
  background: url(../img/icon_btn_tel.svg) no-repeat center center / contain;
}
.header-content__menu__contact__num {
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
  font-weight: 600;
}
/*	フッター
---------------------------------*/
footer {
  position: relative;
  padding: calc(30 / 375 * 100%) 0 calc(20 / 375 * 100%);
  background: #000;
}
.footer-menu {
  padding: 0;
}
.footer-menu__list {
  display: flex;
  justify-content: center;
}
.footer-menu__list__item {
  margin-right: calc(15 / 375 * 100%);
  padding-right: calc(15 / 375 * 100%);
  border-right: 1px solid #fff;
}
.footer-menu__list__item:last-of-type {
  margin-right: 0;
  padding-right: 0;
  border-right: none;
}
.footer-menu__list__item__string {
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  font-weight: bold;
  line-height: 1;
}
.footer-copyright {
  margin-top: calc(25 / 375 * 100%);
  width: 100%;
}
.footer-copyright__string {
  padding: 0;
  width: 100%;
  text-align: center;
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
  color: #ABAAAD;
}
/*	基本レイアウト
---------------------------------*/
.cmn-content__box {
  position: relative;
  margin: 0 auto;
}
/*	汎用ボタン
---------------------------------*/
.cmn-content__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin: auto;
  width: min(610px, calc(305 / 375 * 100vw));
  transition: 0.6s;
}
.cmn-content__btn--connect {
  margin-top: calc(10 / 315 * 100%);
}
.cmn-content__btn::before {
  content: "";
  position: absolute;
  bottom: max(-10px, calc(5 / 375 * (-100vw)));
  width: 100%;
  height: 100%;
  background: #D5A200;
  border-radius: 10px;
}
.cmn-content__btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: calc(20 / 305 * 100%);
  width: 100%;
  height: 100%;
  background: #FABE00;
  border: none;
  border-radius: 10px;
}
.cmn-content__btn--icon02 a {
  padding: calc(12 / 305 * 100%) calc(20 / 305 * 100%);
}
.cmn-content__btn a:hover {
  opacity: 1;
}
.cmn-content__btn--icon01 a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(20 / 305 * 100%);
  transform: translateY(-50%);
  width: calc(10 / 305 * 100%);
  aspect-ratio: 1/2;
  background: url(../img/icon_arw01.svg) no-repeat center center / contain;
}
.cmn-content__btn--icon02 a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(20 / 305 * 100%);
  transform: translateY(-50%);
  width: calc(33 / 305 * 100%);
  aspect-ratio: 33/41;
  background: url(../img/icon_pointer01.svg) no-repeat center center / contain;
}
.cmn-content__btn__string {
  position: relative;
  width: 100%;
  text-align: center;
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 800;
  color: #000;
  line-height: 1;
}
.p-form__submit button {
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 800;
  color: #000;
  line-height: 1;
}
.cmn-content__btn__string span {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: calc(5 / 305 * 100%);
  gap: gap: min(20px, calc(10 / 375 * 100vw));
}
.cmn-content__btn__string span::before {
  content: "";
  width: calc(18 / 305 * 100%);
  aspect-ratio: 1/1;
  background: url(../img/icon_btn_tel.svg) no-repeat center center / contain;
}
.p-form__submit button {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin: auto;
  padding: calc(20 / 305 * 100%);
  width: min(610px, calc(305 / 375 * 100vw));
  background: #FABE00;
  border: none;
  border-bottom: min(10px, calc(5 / 375 * 100vw)) solid #D5A200;
  border-radius: 10px;
}
.p-form__submit button::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(20 / 305 * 100%);
  transform: translateY(-50%);
  width: calc(10 / 305 * 100%);
  aspect-ratio: 1/2;
  background: url(../img/icon_arw01.svg) no-repeat center center / contain;
}
.p-form__submit button.return::before {
  right: calc(20 / 180 * 100%);
  width: calc(10 / 180 * 100%);
  aspect-ratio: 1/2;
}
.p-form__submit button {
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 800;
  color: #000;
  line-height: 1;
}
/*	メインイメージ
---------------------------------*/
.top-main {
  position: relative;
  padding: 0;
}
.top-main__fv {
  padding: 0;
}
.top-main__fv__catch {
  padding: calc(4 / 375 * 100%) calc(15 / 375 * 100%) calc(10 / 375 * 100%);
}
.top-main__fv__txt {
  padding: 0 calc(15 / 375 * 100%) calc(15 / 375 * 100%);
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
/*	トップページ
---------------------------------*/
.top-cmn__heading {
  margin-bottom: calc(40 / 345 * 100%);
}
.top-cmn__heading img {
  width: 100%;
}
/*CONTACT*/
.top-contact {
  padding: calc(20 / 375 * 100%) calc(15 / 375 * 100%);
  background: #FABE00;
}
.top-contact__frame {
  display: flex;
  justify-content: space-between;
}
.top-contact__btn {
  position: relative;
  width: calc((100% - (9 / 345 * 100%)) / 2);
}
.top-contact__btn::before {
  content: "";
  position: absolute;
  bottom: -10px;
  width: 100%;
  height: 100%;
  background: #830006;
  border-radius: 10px;
}
.top-contact__btn--col01::before {
  background: #043069;
}
.top-contact__btn__link {
  display: flex;
  flex-direction: column;
  position: relative;
  padding: calc(14 / 168 * 100%) calc(10 / 168 * 100%) calc(24 / 168 * 100%);
  background: #A40108;
  border-radius: 15px;
  text-align: center;
  line-height: 1;
}
.top-contact__btn--col01 .top-contact__btn__link {
  background: #014CA4;
}
.top-contact__btn__link:hover {
  opacity: 1;
}
.top-contact__btn__txt {
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  line-height: 1.25;
}
.top-contact__btn__txt strong {
  font-weight: bold;
}
.top-contact__btn__txt small {
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
}
.top-contact__btn__catch {
  margin-top: calc(10 / 168 * 100%);
  font-size: min(3.6rem, calc(18 / 375 * 100vw));
  font-weight: 800;
}
.top-contact__btn__catch img {
  width: min(36px, calc(18 / 375 * 100vw));
  aspect-ratio: 1/1;
  object-fit: contain;
}
.top-contact__btn__catch small {
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  font-weight: inherit;
}
.top-contact__btn__menu {
  font-size: min(6rem, calc(30 / 375 * 100vw));
  font-weight: bold;
}
.top-contact__btn__action {
  display: flex;
  justify-content: center;
  position: relative;
  margin: calc(10 / 168 * 100%) auto;
  padding: calc(5 / 148 * 100%);
  width: calc(130 / 148 * 100%);
  background: #6E0106;
  border-radius: 5px;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  font-weight: bold;
}
.top-contact__btn__action::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(5 / 148 * 100%);
  transform: translateY(-50%);
  width: calc(6 / 148 * 100%);
  aspect-ratio: 1/2;
  background: url(../img/icon_arw02.svg) no-repeat center center / contain;
}
.top-contact__btn--col01 .top-contact__btn__action {
  background: #043069;
}
/*REASON*/
.top-reason {
  padding: calc(20 / 375 * 100%) calc(15 / 375 * 100%) calc(30 / 375 * 100%);
}
.top-reason__heading {
  margin-bottom: calc(10 / 345 * 100%);
}
.top-reason__heading img {
  width: 100%;
}
.top-reason__item + .top-reason__item {
  margin-top: calc(20 / 345 * 100%);
}
.top-reason__item__heading__ttl {
  margin-bottom: calc(5 / 345 * 100%);
}
.top-reason__item__heading__ttl img {
  width: 100%;
}
.top-reason__item__heading__txt {
  margin-bottom: calc(15 / 345 * 100%);
  text-align: center;
  font-size: min(4.8rem, calc(24 / 375 * 100vw));
  font-weight: 800;
  line-height: 1.4;
}
.top-reason__item__heading__txt small {
  display: inline-block;
  font-size: min(3.6rem, calc(18 / 375 * 100vw));
  font-weight: inherit;
  line-height: 1.4;
}
.top-reason__item__heading__txt span {
  background: linear-gradient(transparent 60%, #830006 60%);
  font-weight: inherit;
}
.top-reason__item__wrap {
  padding: calc(30 / 345 * 100%) 0;
  background: #FFF9E5;
  color: #000;
}
.top-reason__item__ph {
  margin-bottom: calc(35 / 345 * 100%);
}
.top-reason__item__ph img {
  width: 100%;
}
.top-reason__item__ph__txt {
  margin: calc(20 / 345 * 100%) 0 calc(35 / 345 * 100%);
  text-align: center;
  font-size: min(4rem, calc(20 / 375 * 100vw));
  font-weight: 600;
  line-height: 1.2;
}
.top-reason__item__ph__txt span {
  display: inline-block;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  font-weight: inherit;
}
.top-reason__item__ph__txt span strong {
  font-weight: inherit;
  color: #A40108;
}
.top-reason__item__comment {
  position: relative;
  margin: 0 auto;
  padding: calc(5 / 345 * 100%) calc(5 / 345 * 100%);
  width: calc(305 / 345 * 100%);
  background: #fff;
  border: 2px solid #A40108;
  text-align: center;
}
.top-reason__item__comment--pd01 {
  padding-top: calc(20 / 345 * 100%);
}
.top-reason__item__comment__icon {
  position: absolute;
  top: max(-26px, calc(5 / 375 * (-100vw)));
  left: 50%;
  transform: translateX(-50%);
  display: inline-block;
  padding: calc(5 / 305 * 100%) calc(20 / 305 * 100%);
  background: #A40108;
  border: 2px solid #fff;
  border-radius: 100px;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  font-weight: 800;
  color: #fff;
  line-height: 1;
  white-space: nowrap;
}
.top-reason__item__comment__string {
  font-size: min(3.2rem, calc(17 / 375 * 100vw));
  font-weight: 800;
}
.top-reason__item__comment__string strong {
  font-weight: inherit;
  color: #A40108;
}
.top-reason__item__comment__img img {
  width: 100%;
}
.top-reason__item__catch {
  margin: calc(10 / 345 * 100%) 0 calc(20 / 345 * 100%);
  text-align: center;
}
.top-reason__item__catch__string {
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  font-weight: 600;
}
.top-reason__item__faq {
  position: relative;
  margin: 0 auto;
  width: calc(305 / 345 * 100%);
}
.top-reason__item__faq__block + .top-reason__item__faq__block {
  margin-top: calc(2 / 345 * 100%);
}
.top-reason__item__faq__ttl {
  display: flex;
  position: relative;
  background: #fff;
  cursor: pointer;
}
.top-reason__item__faq__ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(10 / 305 * 100%);
  transform: translateY(-50%);
  width: calc(14 / 305 * 100%);
  aspect-ratio: 1/1;
  background: url(../img/icon_open01.svg) no-repeat center center / contain;
}
.top-reason__item__faq__ttl.open::before {
  background: url(../img/icon_open02.svg) no-repeat center center / contain;
}
.top-reason__item__faq__ttl__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: calc(2 / 305 * 100%);
  width: calc(20 / 305 * 100%);
  background: #A40108;
}
.top-reason__item__faq__ttl__icon img {
  width: 100%;
}
.top-reason__item__faq__ttl__info {
  flex: 1;
  padding: calc(10 / 305 * 100%) calc(40 / 305 * 100%) calc(10 / 305 * 100%) calc(10 / 305 * 100%);
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 600;
  color: #A40108;
}
.top-reason__item__faq__txt {
  display: flex;
  background: #F7F7F8;
}
.top-reason__item__faq__txt__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: calc(2 / 305 * 100%);
  width: calc(20 / 305 * 100%);
  background: #000;
}
.top-reason__item__faq__txt__icon img {
  width: 100%;
}
.top-reason__item__faq__txt__info {
  flex: 1;
  padding: calc(10 / 305 * 100%);
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
@media screen and (max-width: 750px) {
  .top-reason__item__comment {
    border: 1px solid #A40108;
  }
}
/*FLOW*/
.top-flow {
  padding: calc(30 / 375 * 100%) calc(15 / 375 * 100%) calc(30 / 375 * 100%);
  background: #FFF9E5;
  color: #000;
}
.top-flow__list__item + .top-flow__list__item {
  margin-top: calc(40 / 345 * 100%);
}
.top-flow__list__item__heading {
  display: flex;
  align-items: center;
  margin-bottom: calc(30 / 345 * 100%);
  background: #fff;
}
.top-flow__list__item__heading__icon {
  width: calc(50 / 345 * 100%);
}
.top-flow__list__item__heading__icon img {
  width: 100%;
}
.top-flow__list__item__heading__string {
  padding: 0 calc(20 / 295 * 100%);
  font-size: min(4.8rem, calc(24 / 375 * 100vw));
  font-weight: 800;
  color: #A40108;
}
.top-flow__list__item__about__ph img {
  width: 100%;
}
.top-flow__list__item__about__guide {
  margin-top: calc(40 / 345 * 100%);
}
.top-flow__list__item__about__guide__ttl {
  position: relative;
  padding: calc(22 / 345 * 100%);
  background: linear-gradient(-9.5deg, #2B2B2B 0%, #2B2B2B 50%, #000 50%, #000 100%);
  text-align: center;
  color: #fff;
  line-height: 1;
  cursor: pointer;
}
.top-flow__list__item__about__guide__ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(20 / 305 * 100%);
  transform: translateY(-50%);
  width: calc(14 / 305 * 100%);
  aspect-ratio: 1/1;
  background: url(../img/icon_open03.svg) no-repeat center center / contain;
}
.top-flow__list__item__about__guide__ttl.open::before {
  background: url(../img/icon_open04.svg) no-repeat center center / contain;
}
.top-flow__list__item__about__guide__ttl__string {
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 700;
}
.top-flow__list__item__about__guide__info {
  padding: calc(20 / 345 * 100%);
  background: #fff;
}
.top-flow__list__item__about__guide__info__catch {
  margin-bottom: calc(20 / 305 * 100%);
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 600;
}
.top-flow__list__item__about__guide__info__block + .top-flow__list__item__about__guide__info__block {
  margin-top: calc(5 / 305 * 100%);
}
.top-flow__list__item__about__guide__info__heading {
  display: flex;
  align-items: center;
  background: #F7F7F7;
}
.top-flow__list__item__about__guide__info__heading__icon {
  width: calc(46 / 305 * 100%);
}
.top-flow__list__item__about__guide__info__heading__icon img {
  width: 100%;
}
.top-flow__list__item__about__guide__info__heading__string {
  padding: 0 calc(20 / 305 * 100%);
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 600;
}
.top-flow__list__item__about__guide__info__sample {
  margin: calc(15 / 305 * 100%) 0;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
.top-flow__list__item__about__guide__info__sample__item {
  position: relative;
  padding: 0 0 0 1em;
}
.top-flow__list__item__about__guide__info__sample__item + .top-flow__list__item__about__guide__info__sample__item {
  margin-top: calc(10 / 305 * 100%);
}
.top-flow__list__item__about__guide__info__sample__item::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.top-flow__list__item__about__guide__info__sample__item strong {
  font-weight: 600;
}
.top-flow__list__item__about__guide__info__txt {
  margin-top: calc(15 / 305 * 100%);
}
.top-flow__list__item__about__guide__info__txt__string {
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
/*VOICE*/
.top-voice {
  padding: calc(40 / 375 * 100%) calc(15 / 375 * 100%);
}
.top-voice__list__item {
  display: flex;
  align-items: center;
}
.top-voice__list__item + .top-voice__list__item {
  margin-top: calc(20 / 345 * 100%);
}
.top-voice__list__item__icon {
  position: relative;
  width: calc(90 / 345 * 100%);
  z-index: 10;
}
.top-voice__list__item__icon img {
  width: 111%;
  max-width: initial;
}
.top-voice__list__item__about {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  position: relative;
  padding: calc(15 / 345 * 100%) calc(20 / 345 * 100%);
  min-height: min(220px, calc(110 / 345 * 100vw));
  background: #fff;
  border-radius: 20px;
  color: #000;
}
.top-voice__list__item__about__icon {
  position: absolute;
  top: max(-6px, calc(3 / 375 * (-100vw)));
  left: max(-6px, calc(3 / 375 * (-100vw)));
  width: calc(14 / 255 * 100%);
}
.top-voice__list__item__about__icon img {
  width: 100%;
}
.top-voice__list__item__about__string {
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
/*FAQ*/
.top-faq {
  padding: calc(30 / 375 * 100%) calc(15 / 375 * 100%);
  background: #FFF9E5;
  color: #000;
}
.top-faq__list__item + .top-faq__list__item {
  margin-top: calc(5 / 345 * 100%);
  ;
}
.top-faq__list__item__ttl {
  display: flex;
  align-items: flex-start;
  position: relative;
  background: #fff;
  cursor: pointer;
}
.top-faq__list__item__ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(10 / 305 * 100%);
  transform: translateY(-50%);
  width: calc(14 / 305 * 100%);
  aspect-ratio: 1/1;
  background: url(../img/icon_open01.svg) no-repeat center center / contain;
}
.top-faq__list__item__ttl.open::before {
  background: url(../img/icon_open02.svg) no-repeat center center / contain;
}
.top-faq__list__item__ttl__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: calc(2 / 305 * 100%) calc(7 / 305 * 100%);
  width: calc(30 / 305 * 100%);
  background: #A40108;
  aspect-ratio: 1/1;
}
.top-faq__list__item__ttl__icon img {
  width: 100%;
}
.top-faq__list__item__ttl__info {
  flex: 1;
  padding: calc(10 / 305 * 100%) calc(40 / 305 * 100%) calc(10 / 305 * 100%) calc(10 / 305 * 100%);
}
.top-faq__list__item__ttl__info__string {
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 600;
  color: #A40108;
  line-height: 1.4;
}
.top-faq__list__item__about {
  display: flex;
  align-items: flex-start;
  background: #F7F7F8;
}
.top-faq__list__item__about__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: calc(2 / 305 * 100%) calc(7 / 305 * 100%);
  width: calc(30 / 305 * 100%);
  background: #000;
  aspect-ratio: 1/1;
}
.top-faq__list__item__about__icon img {
  width: 100%;
}
.top-faq__list__item__about__info {
  flex: 1;
  padding: calc(15 / 305 * 100%);
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
.top-faq__list__item__about__info__string + .top-faq__list__item__about__info__string {
  margin-top: 1em;
}
/*CASE*/
.top-case {
  padding: calc(30 / 375 * 100%) calc(15 / 375 * 100%);
  overflow: hidden;
}
/*FORM*/
.top-form {
  padding: calc(30 / 375 * 100%) calc(15 / 375 * 100%);
  overflow: hidden;
}
.top-form__heading {
  margin-bottom: calc(10 / 345 * 100%);
}
.top-form__heading img {
  width: 100%;
}
.top-form__wrap {
  padding: 0;
  background: #fff;
  color: #000;
}
.top-form__cnt {
  padding: 0 calc(15 / 375 * 100%) calc(30 / 375 * 100%);
}
.top-form__ttl__string img {
  width: 100%;
}
.top-form__cnt__ttl {
  margin-bottom: calc(15 / 345 * 100%);
  text-align: center;
  font-size: min(4rem, calc(20 / 375 * 100vw));
  font-weight: 800;
  line-height: 1.4;
}
.top-form__cnt__info {
  margin-bottom: calc(15 / 345 * 100%);
  font-size: min(2rem, calc(12 / 375 * 100vw));
}
.confirm-form__cnt {
  padding: 0 calc(15 / 375 * 100%) calc(30 / 375 * 100%);
  background: #fff
}
/*ENDLINE*/
.top-endline {
  padding: 0 calc(15 / 375 * 100%) calc(40 / 375 * 100%);
}
.top-endline__inr {
  padding: 0 calc(15 / 345 * 100%);
}
.top-endline__ttl {
  margin-bottom: calc(10 / 315 * 100%);
  text-align: center;
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 800;
}
/*フォーム*/
.p-form__error {
  width: 100%;
  margin-top: 8px;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  color: #a40111
}
.p-form__row {
  display: flex;
  flex-direction: column;
  background: #fff;
  color: #000;
}
.p-form__row.is-hidden {
  height: 0;
  overflow: hidden;
  border-bottom: 0;
  opacity: 0
}
.p-form__label {
  position: relative;
  display: flex;
  align-items: center;
  gap: min(10px, calc(5 / 375 * 100vw));
  width: 100%;
  padding: min(20px, calc(10 / 375 * 100vw)) 0;
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 700;
  line-height: 1.45;
}
.p-form__label small {
  margin-left: 0;
  padding: 2px;
  font-size: 65%;
  background: #fff9e5;
  letter-spacing: -.5px;
}
.p-form__label::before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(70px, calc(35 / 375 * 100vw));
  height: min(40px, calc(20 / 375 * 100vw));
  padding-bottom: .15em;
  font-size: min(2.2rem, calc(11 / 375 * 100vw));
  line-height: 1;
  color: #fff;
  content: "任意";
  background-color: #777
}
.p-form__label.-nomark::before {
  display: none
}
.p-form__label.-required {
  position: relative
}
.p-form__label.-required::before {
  content: "必須";
  background-color: #a40111
}
.p-form__input {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 0 min(20px, calc(10 / 375 * 100vw));
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
}
.p-form__input.-list {
  flex-wrap: wrap;
  gap: min(10px, calc(5 / 375 * 100vw)) min(10px, calc(5 / 375 * 100vw));
}
.p-form__input.-horizontal > .text {
  margin-top: min(10px, calc(5 / 375 * 100vw));
}
.p-form__input.-vertical {
  display: block
}
.p-form__input.-vertical > * + * {
  margin-top: min(10px, calc(5 / 375 * 100vw))
}
.p-form__input.-vertical > .label + * {
  margin-top: 8px
}
.p-form__input > .note {
  width: 100%;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
.p-form__input.-birthday2 > .col {
  display: flex;
  align-items: center
}
.p-form__input.-birthday2 > .col > .c-input-pulldown {
  width: 80px
}
.p-form__input.-birthday2 > .col:first-of-type > .c-input-pulldown {
  width: 140px
}
.p-form__input.-unique {
  padding-top: 60px;
  margin-top: 0
}
.p-form__input.-unique > * {
  margin-top: 0
}
.p-form__input.-unique > .col {
  padding-top: 10px
}
.p-form__input.-unique > .col > .label {
  position: relative;
  top: -10px;
  margin-top: calc(-1em - 10px);
  font-weight: 700;
  line-height: 1
}
.p-form__note {
  margin-top: 40px;
  margin-bottom: 40px;
  text-align: left;
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
}
.p-form__note + .p-form__note {
  text-align: center;
}
.p-form__scrollable {
  width: 100%;
  height: 150px;
  padding: 20px;
  overflow: auto;
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
  border: 1px solid #bbb
}
.p-form__scrollable > .p-section .c-heading-plain {
  margin-bottom: 10px;
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
}
.p-form__scrollable > .p-section .c-heading-square {
  margin-bottom: 12px;
  font-size: min(3.6rem, calc(18 / 375 * 100vw));
}
.p-form__scrollable > .p-section .c-heading-square::before {
  top: .35em
}
.p-form__submit {
  display: flex;
  flex-direction: column;
  position: relative;
  margin-top: 40px;
}
.p-form__submit > .c-button.is-disable {
  pointer-events: none;
  opacity: .2
}
.p-form__submit > .return {
  order: 2;
  margin: 10px calc(9 / 375 * 100%) 0 auto;
  width: 180px;
  height: 60px;
  min-height: initial;
  background: #ccc;
  border-color: #666;
}
.p-form-catalog {
  display: flex;
  flex-wrap: wrap;
  column-gap: 20px;
  margin-block: 30px
}
.p-form-catalog__image {
  flex-shrink: 0;
  width: 180px
}
.p-form-catalog__image > img {
  width: 100%
}
.p-form-catalog__title {
  width: 100%;
  margin-bottom: 14px;
  font-size: min(4rem, calc(20 / 375 * 100vw));
  font-weight: 700;
  line-height: 1.2
}
.p-form-catalog__price {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center
}
.p-form-catalog__price > .label {
  margin-bottom: 6px;
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 700;
  line-height: 1;
  color: #a40111
}
.p-form-catalog__price > .number {
  display: flex;
  column-gap: .25em;
  align-items: baseline;
  font-weight: 700;
  color: #a40111
}
.p-form-catalog__price > .number > span {
  font-family: "Teko", sans-serif;
  font-weight: 400;
  font-size: min(3.6rem, calc(18 / 375 * 100vw));
  line-height: 1
}
.p-form-domain {
  width: 100%;
}
.p-form-domain__inner {
  position: relative;
  display: none;
  width: 100%
}
.p-form-domain__pulldown {
  position: absolute;
  top: -1px;
  right: 0;
  left: 0;
  z-index: 1;
  background-color: #fff;
  border: 1px solid #bbb
}
.p-form-domain__pulldown-item {
  padding: 5px 10px;
  cursor: pointer
}
.p-form-domain__pulldown-item + .p-form-domain__pulldown-item {
  border-top: 1px solid #bbb
}
.c-input-text.-large {
  width: 100%;
}
.c-input-text {
  padding-right: 16.66%;
  padding-left: 5.55%;
  width: 100%;
  height: min(100px, calc(50 / 375 * 100vw));
  font-family: inherit;
  color: inherit;
  background-color: #f7f7f7;
  border-radius: 0;
  border: none;
  box-shadow: none;
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
}
.c-input-pulldown {
  width: 100%;
  height: min(100px, calc(50 / 375 * 100vw));
}
.c-input-pulldown > select {
  width: 100%;
  height: min(100px, calc(50 / 375 * 100vw));
  padding-right: 16.66%;
  padding-left: 5.55%;
  font-family: inherit;
  color: inherit;
  background: #F7F7F7;
  border-radius: 0;
  border: none;
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
}
.c-input-textarea {
  padding: 1.2em 5%;
  width: 100%;
  height: min(200px, calc(100 / 375 * 100vw));
  background: #F7F7F7;
  border-radius: 0;
  border: none;
  box-shadow: none;
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
}
/*事例*/
.p-case-card-list {
  /*display: grid;
	grid-template-columns: repeat(4,1fr);
	gap:0;*/
  width: 100%;
  height: auto
}
.p-case-card__wrapper {
  width: min(calc(295 / 375 * 675px), calc(295 / 375 * 100vw)) !important;
  margin-right: min(60px, calc(30 / 375 * 100vw));
  box-shadow: 0 1px 8px #00000029
}
.p-case-card {
  display: block;
}
.p-case-card__thumb {
  position: relative;
  width: 100%;
  aspect-ratio: 295/221;
}
.p-case-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale .2s ease-out
}
.p-case-card__thumb > .label {
  display: flex;
  align-items: center;
  position: absolute;
  bottom: max(-24px, calc(12 / 375 * (-100vw)));
  right: 0;
  padding: 0 min(16px, calc(8 / 375 * 100vw));
  height: min(48px, calc(24 / 375 * 100vw));
  font-size: min(2.4rem, calc(12 / 375 * 100vw));
  font-weight: 600;
  color: #fff;
  background: #A40108;
  z-index: 10;
}
.p-case-card__body {
  padding: min(20px, calc(20 / 375 * 100vw));
  background: #fff;
  color: #000;
}
.p-case-card__body > .name {
  margin-bottom: min(20px, calc(10 / 375 * 100vw));
  font-size: min(3.2rem, calc(16 / 375 * 100vw));
  font-weight: 700;
  line-height: 1.5;
}
.p-case-card__body > .data {
  display: flex;
  align-items: center;
  padding: min(20px, calc(10 / 375 * 100vw));
  background: #F7F7F8;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  line-height: 1.5
}
.p-case-card__body > .data + .data {
  margin-top: .8rem
}
.p-case-card__body > .data.-em {
  background: #F6E5E5;
  color: #a40111
}
.p-case-card__body .data-label {
  display: flex;
  justify-content: space-between;
  width: min(132px, calc(66 / 375 * 100vw));
  font-weight: 700;
  line-height: 1;
  border-right: 2px solid #ccc;
}
.p-case-card__body .data-detail {
  display: flex;
  align-items: flex-end;
  padding: 0 min(10px, calc(10 / 375 * 100vw));
  line-height: 1;
}
.p-case-card__body .data-detail .num {
  margin-right: .4rem;
  font-weight: 800;
  font-size: min(6rem, calc(30 / 375 * 100vw));
  line-height: .8
}
.p-case-card__body > .detail {
  margin-top: min(30px, calc(15 / 375 * 100vw));
}
.p-case-card__body > .detail > .icon {
  display: flex;
  gap: min(10px, calc(5 / 375 * 100vw));
  align-items: center;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
  font-weight: 700
}
.p-case-card__body > .detail > .icon::before {
  content: "";
  width: min(40px, calc(20 / 375 * 100vw));
  aspect-ratio: 1/1;
  background: url(../img/icon_fukidashi.svg) no-repeat center center / contain;
}
.p-case-card__body > .detail > .icon svg {
  display: none;
}
.p-case-card__body > .detail > .icon > .label {}
.p-case-card__body > .detail > p {
  position: relative;
  margin-top: min(40px, calc(20 / 375 * 100vw));
  padding: min(30px, calc(15 / 375 * 100vw));
  background: #F7F7F8;
  border-radius: 15px;
  font-size: min(2.8rem, calc(14 / 375 * 100vw));
}
.p-case-card__body > .detail > p::before {
  content: "";
  position: absolute;
  left: max(-6px, calc(3 / 375 * (-100vw)));
  top: max(-6px, calc(3 / 375 * (-100vw)));
  width: min(28px, calc(14 / 375 * 100vw));
  aspect-ratio: 1/1;
  background: url(../img/icon_dot02.svg) no-repeat center center / contain;
}