@charset "UTF-8";
/* ==================================================
	sp
================================================== */
@media screen and (max-width: 599px) {
  #fv {
    width: 100%;
  }
  .fv_wrapper {
    position: relative;
  }
  .fv_ttl {
    width: 100%;
    position: absolute;
    z-index: 9;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgb(255 255 255 / 0.7);
  }
  .fv_ttl h2 {
    font-weight: 700;
    font-size: 1.2rem;
    text-align: center;
    padding: 5vw 0;
  }
  .fv {
    width: 100%;
    margin: 0;
    position: relative;
  }
  .fv img {
    width: 100%;
    height: auto;
  }
  #confirm {
    width: 100%;
    margin: 20vw 0;
  }
  .confirm_wrapper {
    width: 90%;
    background: #EAB2BF;
    border-radius: 30px;
    margin: 0 auto;
  }
  .confirm_inner {
    width: 90%;
    margin: 0 auto;
    padding: 10vw 0 5vw;
  }
  .confirm_heading {
    font-size: 1.0rem;
    font-weight: 700;
    text-align: center;
  }
  .confirm_txt {
    line-height: 1.6em;
    text-align: left;
    margin-top: 5vw;
  }
  .confirm_txt span {
    font-weight: 700;
  }
  .contactform_wrapper {
    width: 90%;
    margin: 0 auto;
  }
  .contact-form {
    width: 100%;
  }
  .contact-form th {
    width: 100%;
    display: block;
    box-sizing: border-box;
    margin-top: 5vw;
  }
  .contact-form th span {}
  .contact-form td {
    width: 100%;
    display: block;
    background: #FFF;
    border-radius: 15px;
    box-sizing: border-box;
    margin-top: 2.5vw;
    padding: 3vw 5%;
  }
  input[type="button"] {
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #CB4063;
    text-align: center;
    padding: 5vw 0;
    background: #F4D8DF;
  }
  .btn_back {
    width: 80%;
    margin: 10vw auto 0;
    border: 2px solid #CB4063;
    border-radius: 50px;
    display: block;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
  }
  .btn_back:hover {
    opacity: 0.3;
  }
  input[type="submit"] {
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #F4D8DF;
    text-align: center;
    padding: 5vw 0;
    background: #CB4063;
  }
  .btn_submit {
    width: 80%;
    margin: 5vw auto;
    border: 2px solid #F4D8DF;
    border-radius: 50px;
    display: block;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
  }
  .btn_submit:hover {
    opacity: 0.3;
  }
  .wpcf7-spinner {
    display: flex !important;
    margin: 0 auto !important;
  }
}
/* ==================================================
	tb
================================================== */
@media screen and (min-width: 600px) and (max-width: 1024px) {
  #fv {
    width: 100%;
  }
  .fv_wrapper {
    position: relative;
  }
  .fv_ttl {
    width: 100%;
    position: absolute;
    z-index: 9;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgb(255 255 255 / 0.7);
  }
  .fv_ttl h2 {
    font-weight: 700;
    font-size: 1.2rem;
    text-align: center;
    padding: 5vw 0;
  }
  .fv {
    width: 100%;
    margin: 0;
    position: relative;
  }
  .fv img {
    width: 100%;
    height: auto;
  }
  #confirm {
    width: 100%;
    margin: 20vw 0;
  }
  .confirm_wrapper {
    width: 90%;
    background: #EAB2BF;
    border-radius: 30px;
    margin: 0 auto;
  }
  .confirm_inner {
    width: 90%;
    margin: 0 auto;
    padding: 10vw 0 5vw;
  }
  .confirm_heading {
    font-size: 1.0rem;
    font-weight: 700;
    text-align: center;
  }
  .confirm_txt {
    line-height: 1.6em;
    text-align: left;
    margin-top: 5vw;
  }
  .confirm_txt span {
    font-weight: 700;
  }
  .contactform_wrapper {
    width: 90%;
    margin: 0 auto;
  }
  .contact-form {
    width: 100%;
  }
  .contact-form th {
    width: 100%;
    display: block;
    box-sizing: border-box;
    margin-top: 5vw;
  }
  .contact-form th span {}
  .contact-form td {
    width: 100%;
    display: block;
    background: #FFF;
    border-radius: 15px;
    box-sizing: border-box;
    margin-top: 2.5vw;
    padding: 3vw 5%;
  }
  input[type="button"] {
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #CB4063;
    text-align: center;
    padding: 5vw 0;
    background: #F4D8DF;
  }
  .btn_back {
    width: 50%;
    margin: 10vw auto 0;
    border: 2px solid #CB4063;
    border-radius: 50px;
    display: block;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
  }
  .btn_back:hover {
    opacity: 0.3;
  }
  input[type="submit"] {
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #F4D8DF;
    text-align: center;
    padding: 5vw 0;
    background: #CB4063;
  }
  .btn_submit {
    width: 50%;
    margin: 5vw auto;
    border: 2px solid #F4D8DF;
    border-radius: 50px;
    display: block;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
  }
  .btn_submit:hover {
    opacity: 0.3;
  }
  .wpcf7-spinner {
    display: flex !important;
    margin: 0 auto !important;
  }
}
/* ==================================================
	pc
================================================== */
@media screen and (min-width: 1025px) {
  #fv {
    width: 100%;
  }
  .fv_wrapper {
    position: relative;
  }
  .fv_ttl {
    width: 100%;
    position: absolute;
    z-index: 9;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgb(255 255 255 / 0.7);
  }
  .fv_ttl h2 {
    font-weight: 700;
    font-size: 2.0rem;
    text-align: center;
    padding: 2.5vw 0;
  }
  .fv {
    width: 100%;
    margin: 0;
    position: relative;
  }
  .fv img {
    width: 100%;
    height: auto;
  }
  #confirm {
    width: 100%;
    margin: 10vw 0;
  }
  .confirm_wrapper {
    width: 80%;
    background: #EAB2BF;
    border-radius: 40px;
    margin: 0 auto;
  }
  .confirm_inner {
    width: 90%;
    margin: 0 auto;
    padding: 5vw 0;
  }
  .confirm_heading {
    font-size: 1.4rem;
    font-weight: 700;
    text-align: center;
  }
  .confirm_txt {
    text-align: center;
    margin-top: 2.5vw;
  }
  .confirm_txt span {
    font-weight: 700;
  }
  .contactform_wrapper {
    width: 90%;
    margin: 0 auto;
  }
  .contact-form {
    width: 100%;
  }
  .contact-form th {
    width: 30%;
    text-align: end;
    margin-bottom: 3vw;
    padding: 1.5vw 3.5% 1.5vw 0;
    display: inline-block;
    box-sizing: border-box;
  }
  .contact-form th span {}
  .contact-form td {
    width: 70%;
    letter-spacing: 0.1em;
    padding: 1.5vw 0 1.5vw 3.5%;
    background: #FFF;
    text-align: start;
    display: inline-block;
    box-sizing: border-box;
  }
  input[type="button"] {
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #CB4063;
    text-align: center;
    padding: 2vw 0;
    background: #F4D8DF;
  }
  .btn_back {
    width: 25%;
    margin: 5vw auto 0;
    border: 2px solid #CB4063;
    border-radius: 50px;
    display: block;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
  }
  .btn_back:hover {
    opacity: 0.3;
  }
  input[type="submit"] {
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #F4D8DF;
    text-align: center;
    padding: 2vw 0;
    background: #CB4063;
  }
  .btn_submit {
    width: 25%;
    margin: 2.5vw auto 5vw;
    border: 2px solid #F4D8DF;
    border-radius: 50px;
    display: block;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
  }
  .btn_submit:hover {
    opacity: 0.3;
  }
  .wpcf7-spinner {
    display: flex !important;
    margin: 0 auto !important;
  }
}