@charset "UTF-8";

/* contact
----------------------------------------------- */

.midashi01 { position: relative; }
.midashi01::after { content: ''; width: 10vw; height: 0.5px; background: #000; position: absolute; bottom: -7vw; }

.contact-inner { margin-bottom: 8vw; }
.contact-inner .contact-tel p span { padding-left: 0.8rem; text-indent: -0.8rem; display: block; }
.contact-inner .contact-tel p .font { display: inline-block; }
.contact-inner .contact-tel a { margin-bottom: 2vw; font-size: 10vw; font-family: "goldenbook"; font-weight: 400; letter-spacing: .04rem; display: table; }
.contact-inner .contact-hpb { margin-bottom: 14vw; }
.contact-inner .contact-hpb a { padding: 4vw 4vw 4vw 6vw; color: #8a5f71; font-size: 5vw; font-family: montserrat; font-weight: 500; text-align: center; letter-spacing: .06em; border: 0.5px solid #000; border-radius: 50px; }
.contact-inner .contact-hpb a::before { content: '\e905'; margin-right: 1vw; font-size: 100%; font-family: 'icon'; display: inline-block; }
.contact-inner .contact-hpb a::after { content: '\f105'; margin-left: 8vw; font-size: 100%; font-family: 'icon'; display: inline-block; }

.formbox { width:100%; margin-bottom: 10vw; }
.formintor { margin: 0 auto 5vw; text-align:justify; text-justify:inter-ideograph; }
.formintor p { margin: 0 auto 3vw; }

.privacy-in { margin: 0 auto 10px; padding: 0; border: 1px solid #ddd; }
.privacy-in iframe { width: 100%; }

/* form
----------------------------------------------- */
form#mailformpro .form-flex { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
form#mailformpro .form-flex li { width: 49%; margin: 0 0 2%; }
form#mailformpro .form-flex li:nth-child(3) { width: 100%; }
form#mailformpro .form-flex li.address-detail { width: 100%; }

/* =============================================
pc
================================================*/
@media screen and (min-width: 736px) {

/* contact
----------------------------------------------- */

.midashi01 { margin-bottom: 40px; }
.midashi01::after { width: 80px; left: 0; bottom: -16px; }
.midashi01 .en { font-size: 36px; display: inline-block; }
.midashi01 .jp { margin-left: 10px; display: inline-block; }

.contact-inner { margin-bottom: 60px; }
.contact-inner .contact-tel {margin: 0 auto 60px;}
.contact-inner .contact-tel a { margin-bottom: 10px; font-size: 32px; }
.contact-inner .contact-hpb {width: 360px;margin-bottom: 60px;}
.contact-inner .contact-hpb a {padding: 20px 20px 20px 30px;font-size: 18px;}
.contact-inner .contact-hpb a::before { margin-right: 6px; }
.contact-inner .contact-hpb a::after { margin-left: 40px; }

/* form
----------------------------------------------- */
.formbox { margin: 0 auto; }
.formintor { margin: 0px auto 80px; }
.formintor p { margin: 0 auto 10px; font-size: 15px; }
form#mailformpro .form-flex li,form#mailformpro .form-flex .list-other { width: calc(100% / 3 - 5px); }
form#mailformpro .mailadd .form-flex { justify-content: flex-start; -webkit-justify-content: flex-start; gap: 0 10px; }
form#mailformpro .mailadd .form-flex li { width: 49%; }
form#mailformpro .mailadd .form-flex li input,form#mailformpro .mailadd .form-flex li select { width: 100%; }

/* thanks
----------------------------------------------- */
.thanks-btn { margin: 0; }
}

@media screen and (min-width: 900px) {
form#mailformpro dl dt { width: 26%; display: inline-block; }
form#mailformpro dl dd { width: 68%; display: inline-block; }
}

@media screen and (min-width: 1000px) {
.contact-inner { margin: 0 auto 40px; }
}