@charset "UTF-8";
/* Scss Document */
/*英字*/
/* Scss Document */
/*naga add*/
/* 下からフェードイン(初期値) */
.js-fadeUp, .js-fadeUpSlow {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateY(30px);
  /* 下に30pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 下からフェードイン(スクロールした後) */
.js-fadeUp.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: 0s;
  /*開始を遅らせる */
}

.js-fadeUpSlow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/* 左からフェードイン(初期値) */
.js-fadeIn, .js-fadeInSlow {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateX(-100px);
  /* 左に100pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 左からフェードイン(スクロールした後) */
.js-fadeIn.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: 0s;
  /* 開始を遅らせる */
}

.js-fadeInSlow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/* 用紙サイズの指定（A4） */
@page {
  margin: 8mm;
  size: 210mm 297mm;
  /* A4縦 */
}
@media print {
  /* 全体設定 */
  body {
    -webkit-print-color-adjust: exact;
    /* 印刷時でも背景色や背景画像を表示 */
    width: 1400px;
    /* 印刷時の全ページ幅を統一 */
    zoom: 0.8;
    /* なるべく多くのブラウザで切れないようにするため */
    /*no animation*/
  }
  body header {
    position: absolute !important;
    max-width: 1400px;
    width: 1400px !important;
  }
  body .header--flex {
    width: 1400px !important;
  }
  body .btnBox {
    display: none;
  }
  body #btn_pagetop {
    display: none;
  }
  body .js-fadeUp,
  body .js-fadeIn,
  body .js-fadeUpSlow,
  body .js-fadeInSlow {
    opacity: 1;
  }
  body .js-fadeIn,
  body .js-fadeInSlow {
    transform: translateX(0);
  }
  body .js-fadeUp,
  body .js-fadeUpSlow {
    transform: translateY(0);
  }
  body .js-fadeUp.is-view,
  body .js-fadeIn.is-view,
  body .js-fadeUpSlow.is-view,
  body .js-fadeInSlow.is-view {
    animation-name: none;
  }
}
.header {
  background-color: #ffefe7 !important;
  box-shadow: 0px 3px 3.7px 0.3px rgba(90, 90, 90, 0.1);
}

.mv {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 100px auto 0;
  padding: 0;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .mv {
    margin-top: 80px;
  }
}
.mv__bg {
  width: 100%;
  height: 220px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 40px;
  background-image: url("../img/contact/bg_tmv.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom left;
}
@media screen and (max-width: 479px) {
  .mv__bg {
    height: 160px;
    padding-left: 15px;
    padding-right: 15px;
  }
}
.mv__flex {
  width: 100%;
  height: 220px;
  margin: 0 auto;
  max-width: 1720px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 479px) {
  .mv__flex {
    height: 160px;
  }
}
.mv__cc {
  font: 400 60px/1.5 "Poiret One", sans-serif;
  color: #ff9a24;
  padding-left: 80px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media screen and (max-width: 1279px) {
  .mv__cc {
    font-size: 48px;
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .mv__cc {
    font-size: 36px;
  }
}
@media screen and (max-width: 479px) {
  .mv__cc {
    padding-bottom: 60px;
  }
}
.mv__cc br {
  display: none;
}
@media screen and (max-width: 767px) {
  .mv__cc br {
    display: block;
  }
}
.mv__image {
  display: block;
  height: auto;
  max-width: 100%;
  position: absolute;
  bottom: 0;
  right: 40px;
}
@media screen and (max-width: 1279px) {
  .mv__image {
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .mv__image {
    width: 200px;
  }
}
@media screen and (max-width: 479px) {
  .mv__image {
    width: 180px;
  }
}
@media screen and (max-width: 329px) {
  .mv__image {
    width: 48%;
  }
}

/*背景がある場合は、背景を指定するdivでsectionを囲む*/
section:not(section section) {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0 120px;
}
@media screen and (min-width: 1441px) {
  section:not(section section) {
    max-width: 1680px;
  }
}
@media screen and (max-width: 1279px) {
  section:not(section section) {
    padding: 0 40px;
  }
}
@media screen and (max-width: 479px) {
  section:not(section section) {
    padding: 0 15px;
  }
}

/*only here*/
body section:first-of-type {
  margin-top: 50px;
}

/*body section:last-of-type {
  margin-bottom: 200px;
}*/
.hl__title1 {
  font: 500 32px/1.5 "M PLUS 1", sans-serif;
  color: #1d1d1d;
  display: block;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media screen and (max-width: 767px) {
  .hl__title1 {
    font-size: 30px;
  }
}
@media screen and (max-width: 479px) {
  .hl__title1 {
    font-size: 24px;
  }
}
.hl__title2 {
  margin-top: 100px;
  text-align: center;
  font: 500 28px/1.5 "M PLUS 1", sans-serif;
  color: #ff9a24;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px 10px 25px;
  background-color: #fffaec;
  border-bottom: 4px dotted #ff9a24;
}
@media screen and (max-width: 479px) {
  .hl__title2 {
    font-size: 22px;
    padding: 15px 10px;
  }
}
@media screen and (max-width: 1279px) {
  .hl__title2.no-mt {
    margin-top: 0;
  }
}
.hl__title3 {
  font: 500 20px/1.5 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #ff9a24;
  padding-left: 50px;
  margin-bottom: 25px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .hl__title3 {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 479px) {
  .hl__title3 {
    font-size: 18px;
    padding-left: 20px;
  }
}
.hl__title3:last-child {
  margin-bottom: 0;
}
.hl__title3:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 39px;
  height: 100%;
  background-image: url("../img/common/headline-mark.png");
  background-size: 39px;
  background-repeat: no-repeat;
  background-position: top left;
}
@media screen and (max-width: 479px) {
  .hl__title3:before {
    width: 20px;
    background-size: 20px;
    background-position: top 6px left;
  }
}

.secAddress__paragraph {
  margin-top: 40px;
  font: 500 16px/1.5 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  margin-bottom: 50px;
}
@media screen and (max-width: 479px) {
  .secAddress__paragraph {
    font-size: 14px;
  }
}
.secAddress__anchor {
  text-decoration: underline;
  text-underline-offset: 3px;
  color: #1d1d1d !important;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media (hover: hover) {
  .secAddress__anchor:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: alpha(opacity=70);
    -moz-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }
}
.secAddress__flex {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 40px;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .secAddress__flex {
    flex-direction: column;
    justify-content: flex-start;
    gap: 20px;
  }
}
.secAddress__flex--lt, .secAddress__flex--rt {
  flex: 1;
  border-radius: 10px;
  border: 1px solid #ffd700;
  padding: 20px 30px 50px;
}
@media screen and (max-width: 479px) {
  .secAddress__flex--lt, .secAddress__flex--rt {
    padding: 20px 20px 30px;
  }
}
.secAddress__flex--paragraph {
  font: 500 16px/1.5 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
}
@media screen and (max-width: 479px) {
  .secAddress__flex--paragraph {
    font-size: 14px;
  }
}

.secForm__paragraph {
  margin-top: 40px;
  font: 500 16px/1.5 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  margin-bottom: 50px;
}
@media screen and (max-width: 479px) {
  .secForm__paragraph {
    font-size: 14px;
  }
}
.secForm__anchor {
  text-decoration: underline;
  text-underline-offset: 3px;
  color: #1d1d1d !important;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media (hover: hover) {
  .secForm__anchor:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: alpha(opacity=70);
    -moz-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }
}

.fm {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .fm {
    margin-top: 30px;
  }
}
.fm__table {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-collapse: collapse;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .fm__table {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block;
    max-width: 600px;
    margin: 50px auto 0;
  }
}
@media screen and (max-width: 767px) {
  .fm__table tr {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
  }
}
.fm__table tr th {
  width: 30%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 10px;
  padding-right: 10px;
  vertical-align: top;
  font-size: 18px;
  font-weight: 500;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 6px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default;
}
@media screen and (max-width: 1279px) {
  .fm__table tr th {
    width: 35%;
  }
}
@media screen and (max-width: 767px) {
  .fm__table tr th {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 0;
    margin-bottom: 10px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .fm__table tr td {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
  }
}
.fm__table tr td input {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #877d75;
  background-color: white;
  border-radius: 3px;
  margin-bottom: 15px;
}
.fm__table tr td input.itext {
  width: 450px;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .fm__table tr td input.itext {
    width: 100%;
    max-width: 450px;
    font-size: 16px;
  }
}
.fm__table tr td select {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #877d75;
  background-color: white;
  border-radius: 3px;
  margin-bottom: 30px;
  width: 450px;
  height: auto;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .fm__table tr td select {
    width: 100%;
    max-width: 450px;
    margin-bottom: 15px;
    font-size: 16px;
  }
}
.fm__table--add .itext[name="住所{郵便番号(3桁)}"] {
  width: 95px;
}
.fm__table--add .itext[name="住所{郵便番号(4桁)}"] {
  width: 100px;
}
.fm__table--add select[name="住所{都道府県}"] {
  width: 100%;
  max-width: 240px;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #877d75;
  background-color: white;
  border-radius: 3px;
  margin-bottom: 30px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .fm__table--add select[name="住所{都道府県}"] {
    font-size: 16px;
  }
}
.fm__table--add .itext[name="住所{住所}"] {
  width: 650px;
}
@media screen and (max-width: 1279px) {
  .fm__table--add .itext[name="住所{住所}"] {
    width: 100%;
    max-width: 650px;
  }
}
.fm__table--txtArea textarea {
  width: 650px;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #877d75;
  background-color: white;
  border-radius: 3px;
  margin-bottom: 30px;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 1279px) {
  .fm__table--txtArea textarea {
    width: 100%;
    max-width: 650px;
  }
}
@media screen and (max-width: 767px) {
  .fm__table--txtArea textarea {
    font-size: 16px;
  }
}
.fm__table--radio {
  padding-top: 10px;
}
.fm__table--radio label {
  display: block;
  width: 150px;
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .fm__table--radio label {
    font-size: 16px;
  }
}
.fm__table--radio label input {
  width: auto;
  padding: 5px;
  border-radius: 20px;
  margin-bottom: 0;
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
}
.fm__submit {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin: 100px auto 0;
}
@media screen and (max-width: 767px) {
  .fm__submit {
    flex-direction: column;
    margin-top: 50px;
  }
}
.fm__submit input {
  width: 260px;
  height: 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 30px;
  border: 1px solid #fff;
  background: #ff4356;
  font: 500 18px/1.5 "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #fff !important;
  letter-spacing: 0.05em;
  padding: calc(20px - (18px * 1.5 - 18px) / 2) 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 479px) {
  .fm__submit input {
    width: 240px;
    height: auto;
    min-height: 50px;
    max-width: 100%;
    font-size: 16px;
    padding: calc(16px - (16px * 1.5 - 16px) / 2) 10px;
  }
}
.fm__submit input:hover {
  text-decoration: none;
}
@media (hover: hover) {
  .fm__submit input:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: alpha(opacity=70);
    -moz-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
  }
}
.fm__required {
  display: inline-block;
  color: #fff;
  background-color: #ff4356;
  width: 46px;
  margin-left: 10px;
  padding-top: 2px;
  padding-bottom: 2px;
  font-size: 13px;
  text-align: center;
  border-radius: 3px;
}
@media screen and (max-width: 767px) {
  .fm__prev {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .fm__prev tr {
    gap: 10px;
    margin-bottom: 30px;
  }
}
.fm__prev tr th {
  width: 20%;
  padding: 20px;
}
@media screen and (max-width: 767px) {
  .fm__prev tr th {
    width: 100%;
    padding: 0;
  }
}
.fm__prev tr td {
  height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .fm__prev tr td {
    height: 100%;
    font-size: 16px;
    padding: 0;
  }
}
.fm__msg {
  height: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .fm__msg {
    font-size: 16px;
    padding: 0;
  }
}

.secForm .in-intro,
.secForm .in-table,
.secForm .fm__submit:not(.kakunin) {
  padding-left: 120px;
  padding-right: 120px;
  margin: 0 auto;
}
@media screen and (max-width: 1279px) {
  .secForm .in-intro,
  .secForm .in-table,
  .secForm .fm__submit:not(.kakunin) {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 479px) {
  .secForm .in-intro,
  .secForm .in-table,
  .secForm .fm__submit:not(.kakunin) {
    padding-left: 15px;
    padding-left: 15px;
  }
}
@media screen and (min-width: 1441px) {
  .secForm .in-intro,
  .secForm .in-table,
  .secForm .fm__submit:not(.kakunin) {
    max-width: 1440px;
  }
}

.fm__submit {
  margin-bottom: 200px;
}

main {
  position: relative;
  overflow: hidden;
}

.grecaptcha-badge {
  bottom: 70px !important;
}
