@charset "UTF-8";
/* CSS Document */

/* お問い合わせ */
.bg { padding: 0 0 80px 0; background: #fff; }
.page-id-7117 #common_form { display: none; }
.page-id-7117 .arch { display: none; }
@media screen and (min-width: 861px) {
#contact_wrap { margin-top: 80px; }
#contact_wrap .com_wid { max-width: 1200px; width: calc(100% - 10%); }

#contact_wrap .sec_01 { display: grid; grid-template-columns: minmax(0, 449px) minmax(0, 605px); justify-content: center; gap: clamp(60px, 9.722vw, 140px); }
#contact_wrap .sec_01 h2 { font-size: 48px; line-height: 150%; white-space: nowrap; }
#contact_wrap .sec_01 div { line-height: 177.778%; }
#contact_wrap .sec_01 ol { margin: 24px 0; }
#contact_wrap .sec_01 ol li { display: flex; list-style: none; }
#contact_wrap .sec_01 ol li::before { content: "・"; flex: 0 0 auto; }
#contact_wrap .sec_01 span { color: #E94F86; font-weight: 700; }

#contact_wrap .sec_02 { margin-top: 80px; }
#contact_wrap .sec_02 ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
#contact_wrap .sec_02 li { min-height: 155px; padding: 32px; border-radius: 16px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_02 li:first-child { background: url(../images/contact_01.png) no-repeat right 20px center; }
#contact_wrap .sec_02 li:nth-child(2) { background: url(../images/contact_02.png) no-repeat right 20px center; }
#contact_wrap .sec_02 li:last-child { background: url(../images/contact_03.png) no-repeat right 20px center; }
#contact_wrap .sec_02 p { display: flex; }
#contact_wrap .sec_02 p::before { content: ""; flex: 0 0 8px; width: 8px; height: 8px; border-radius: 4px; background: #E94F86; }
#contact_wrap .sec_02 p span { flex: 1; padding: 5px 0 0 0; font-size: 24px; font-weight: 700; line-height: 158.333%; }

#contact_wrap .sec_03 { margin-top: 40px; padding: 48px; border-radius: 24px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 .box { margin: 0 auto; max-width: 620px; }
#contact_wrap .sec_03 h3 { font-size: 28px; line-height: 157.143%; }
#contact_wrap .sec_03 h3 + p { margin: 10px 0 0 0; }
#contact_wrap .sec_03 .form_wrap { display: flex; flex-direction: column; gap: 25px; margin: 30px 0 0 0; }
#contact_wrap .sec_03 dt { display: flex; align-items: center; margin: 0 0 5px 0; font-size: 14px; font-weight: 700; }
#contact_wrap .sec_03 .required dt::after { content: "必須"; margin: 0 0 0 10px; padding: 5px 8px; color: #FFF; font-size: 12px; font-weight: 400; line-height: 100%; border-radius: 999px; background: #E94F86; }
#contact_wrap .sec_03 select { appearance: none; -webkit-appearance: none; -moz-appearance: none; width: 100%; padding: 16px 20px; font-size: 18px; background-color: #fff; border-radius: 12px; border: 2px solid #E5E7EB; cursor: pointer; outline: none; background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%2371717A' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 10px center; background-size: 20px 20px; }
#contact_wrap .sec_03 select::-ms-expand { display: none; }
#contact_wrap .sec_03 input[type="text"] { min-height: 64px; padding: 16px 20px; width: 100%; font-size: 18px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 input[type="email"] { min-height: 64px; padding: 16px 20px; width: 100%; font-size: 18px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 input[type="tel"] { min-height: 64px; padding: 16px 20px; width: 100%; font-size: 18px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 textarea { padding: 16px 20px; width: 100%; height: 160px; font-size: 18px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 input:focus, #contact_wrap .sec_03 select:focus, #contact_wrap .sec_03 textarea:focus { border-color: #E94F86; outline: none; }
#contact_wrap .sec_03 .wpcf7-form-control-wrap { display: block; width: 100%; }
#contact_wrap .sec_03 .p_check { display: flex; align-items: center; color: #71717A; font-size: 12px; }
#contact_wrap .sec_03 .p_check::before { content: ""; margin: 0 5px 0 0; width: 16px; height: 16px; background: url(../images/contact_04.png) no-repeat left center; }
#contact_wrap .sec_03 .wpcf7-submit { display: flex; padding: 20px 32px; width: 100%; text-align: center; justify-content: center; align-items: center; align-self: stretch; border-radius: 50px; background: #E94F86; color: #ffffff; border: none; cursor: pointer; font-weight: bold; box-sizing: border-box; }
#contact_wrap .sec_03 .wpcf7-submit:hover { opacity: 0.8; }
#contact_wrap .sec_03 .p_cen { color: #71717A; font-size: 12px; text-align: center; }

#contact_wrap .sec_04 { margin-top: 80px; text-align: center; }
#contact_wrap .sec_04 a { text-decoration: underline; }

#contact_wrap .sec_05 { margin-top: 80px; margin-left: auto; margin-right: auto; padding: 48px; max-width: 1200px; width: calc(100% - 10%); text-align: center; border-radius: 24px; background: #F9F9F9; }
#contact_wrap .sec_05 h2 { font-size: 28px; text-align: center; }
#contact_wrap .sec_05 a { display: inline-flex; align-items: center; margin: 35px 0 0 0; padding: 18px 32px; color: #E94F86 !important; font-size: 18px; text-decoration: none; border: 2px solid #E94F86; border-radius: 50px; overflow: hidden; }
#contact_wrap .sec_05 a span { display: flex; align-items: center; position: relative; z-index: 1; }
#contact_wrap .sec_05 a span::after { content: ""; margin: 0 0 0 10px; width: 30px; height: 30px; border-radius: 50%; background: url(../images/arrow_10.png) no-repeat center center #fff; display: inline-block; }

#contact_wrap .sec_06 { margin-top: 80px; padding-bottom: 40px; }
#contact_wrap .sec_06 .hl_left { font-size: 36px; }
#contact_wrap .sec_06 h3 { display: flex; align-items: flex-end; margin: 20px 0 0 0; }
#contact_wrap .sec_06 h3 span { font-size: 48px; line-height: 100%; }
#contact_wrap .sec_06 h3 strong { color: #71717A; font-size: 14px; line-height: 100%; }
#contact_wrap .sec_06 .box { display: flex; margin: 30px 0 0 0; }
#contact_wrap .sec_06 .box::before { content: "※"; margin: 0 10px 0 0; }
#contact_wrap .sec_06 .box span { color: #E94F86; font-weight: 700; }

.arch-white { height: 100px; }
.arch-white img { max-width: none; width: 100%; height: 100%; }
}
@media screen and (min-width: 861px) and (max-width: 1100px) {
#contact_wrap .sec_01 { gap: 40px; }
#contact_wrap .sec_01 h2 { font-size: 36px; }
#contact_wrap .sec_02 li { padding: 24px; }
#contact_wrap .sec_02 p span { font-size: 18px; }
}
@media screen and (max-width: 860px) {
#contact_wrap { margin-top: 60px; }
#contact_wrap .com_wid { width: 90%; }

#contact_wrap .sec_01 h2 { font-size: 24px; line-height: 150%; }
#contact_wrap .sec_01 div { margin: 24px 0 0 0; line-height: 175%; }
#contact_wrap .sec_01 ol { margin: 24px 0; }
#contact_wrap .sec_01 ol li { display: flex; list-style: none; }
#contact_wrap .sec_01 ol li::before { content: "・"; flex: 0 0 auto; }
#contact_wrap .sec_01 span { color: #E94F86; font-weight: 700; }

#contact_wrap .sec_02 { margin-top: 40px; }
#contact_wrap .sec_02 ul { display: flex; flex-direction: column; gap: 16px; }
#contact_wrap .sec_02 li { min-height: 130px; padding: 24px; border-radius: 16px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_02 li:first-child { background: url(../images/contact_01.png) no-repeat right 20px center; background-size: 114px auto; }
#contact_wrap .sec_02 li:nth-child(2) { background: url(../images/contact_02.png) no-repeat right 20px center; background-size: 114px auto; }
#contact_wrap .sec_02 li:last-child { background: url(../images/contact_03.png) no-repeat right 20px center; background-size: 114px auto; }
#contact_wrap .sec_02 p { display: flex; }
#contact_wrap .sec_02 p::before { content: ""; flex: 0 0 8px; width: 8px; height: 8px; border-radius: 4px; background: #E94F86; }
#contact_wrap .sec_02 p span { flex: 1; padding: 8px 0 0 0; font-size: 18px; font-weight: 700; line-height: 158.333%; }

#contact_wrap .sec_03 { margin-top: 24px; padding: 24px 20px; border-radius: 16px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 h3 { font-size: 20px; line-height: 150%; }
#contact_wrap .sec_03 h3 + p { margin: 10px 0 0 0; }
#contact_wrap .sec_03 .form_wrap { display: flex; flex-direction: column; gap: 25px; margin: 30px 0 0 0; }
#contact_wrap .sec_03 dt { display: flex; align-items: center; margin: 0 0 5px 0; font-size: 14px; font-weight: 700; }
#contact_wrap .sec_03 .required dt::after { content: "必須"; margin: 0 0 0 10px; padding: 5px 8px; color: #FFF; font-size: 12px; font-weight: 400; line-height: 100%; border-radius: 999px; background: #E94F86; }
#contact_wrap .sec_03 select { appearance: none; -webkit-appearance: none; -moz-appearance: none; width: 100%; padding: 16px 20px; font-size: 18px; background-color: #fff; border-radius: 12px; border: 2px solid #E5E7EB; cursor: pointer; outline: none; background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%2371717A' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 10px center; background-size: 20px 20px; }
#contact_wrap .sec_03 select::-ms-expand { display: none; }
#contact_wrap .sec_03 input[type="text"] { padding: 16px 20px; width: 100%; font-size: 16px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 input[type="email"] { padding: 16px 20px; width: 100%; font-size: 16px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 input[type="tel"] { padding: 16px 20px; width: 100%; font-size: 16px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 textarea { padding: 16px 20px; width: 100%; height: 160px; font-size: 16px; border-radius: 12px; border: 2px solid #E5E7EB; }
#contact_wrap .sec_03 input:focus, #contact_wrap .sec_03 select:focus, #contact_wrap .sec_03 textarea:focus { border-color: #E94F86; outline: none; }
#contact_wrap .sec_03 .wpcf7-form-control-wrap { display: block; width: 100%; }
#contact_wrap .sec_03 .p_check { display: flex; align-items: center; color: #71717A; font-size: 12px; }
#contact_wrap .sec_03 .p_check::before { content: ""; margin: 0 5px 0 0; width: 16px; height: 16px; background: url(../images/contact_04.png) no-repeat left center; }
#contact_wrap .sec_03 .wpcf7-submit { display: flex; padding: 20px 32px; width: 100%; text-align: center; justify-content: center; align-items: center; align-self: stretch; border-radius: 50px; background: #E94F86; color: #ffffff; border: none; cursor: pointer; font-weight: bold; box-sizing: border-box; }
#contact_wrap .sec_03 .wpcf7-submit:hover { opacity: 0.8; }
#contact_wrap .sec_03 .p_cen { color: #71717A; font-size: 12px; text-align: center; }

#contact_wrap .sec_04 { margin-top: 24px; color: #71717A; font-size: 12px; line-height: 166.667%; }
#contact_wrap .sec_04 a { color: #71717A; }

#contact_wrap .sec_05 { margin-top: 40px; margin-left: auto; margin-right: auto; padding: 40px 20px; width: 90%; text-align: center; border-radius: 16px; background: #F9F9F9; }
#contact_wrap .sec_05 h2 { font-size: 20px; text-align: center; }
#contact_wrap .sec_05 a { display: inline-flex; align-items: center; margin: 35px 0 0 0; padding: 18px 32px; color: #E94F86 !important; font-size: 18px; text-decoration: none; border: 2px solid #E94F86; border-radius: 50px; overflow: hidden; }
#contact_wrap .sec_05 a span { display: flex; align-items: center; position: relative; z-index: 1; }
#contact_wrap .sec_05 a span::after { content: ""; margin: 0 0 0 10px; width: 30px; height: 30px; border-radius: 50%; background: url(../images/arrow_10.png) no-repeat center center #fff; display: inline-block; }

#contact_wrap .sec_06 { margin-top: 60px; padding-bottom: 20px; }
#contact_wrap .sec_06 .hl_left { font-size: 24px; }
#contact_wrap .sec_06 h3 { display: flex; flex-direction: column; gap: 5px; margin: 20px 0 0 0; }
#contact_wrap .sec_06 h3 span { font-size: 28px; line-height: 100%; }
#contact_wrap .sec_06 h3 strong { color: #71717A; font-size: 14px; line-height: 100%; }
#contact_wrap .sec_06 .box { display: flex; margin: 30px 0 0 0; }
#contact_wrap .sec_06 .box::before { content: "※"; margin: 0 10px 0 0; }
#contact_wrap .sec_06 .box span { color: #E94F86; font-weight: 700; }
}




