@charset "utf-8";
/* CSS Document */
.top_message {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 5%;
    transform: translate(0, -50%);
    text-align: left;
    color: #333;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 15px;
    padding: 0 30px 30px;
    width: 40%;
    max-width: 800px;
    min-width: 600px;
}
.top_message span {
    font-size: clamp(2.8rem, 4vw, 2vw);
    font-weight: 500;
    line-height: 1.8em;
    border-bottom: dotted 10px #ffcb97;
}
.top_message p {
    padding-top: 20px;
}
@media (max-width: 1280px) {
    .top_message {
        top: 40%;
        right: 5%;
        width: 50%;
    }
    .top_message span {
        font-size: clamp(2.3rem, 3.6vw, 1.8vw);
        border-bottom: dotted 8px #ffcb97;
    }
}
@media (max-width: 1000px) {
    .top_message span {
        font-size: clamp(2.0rem, 3vw, 1.6vw);
        border-bottom: dotted 6px #ffcb97;
    }
}
@media (max-width: 660px) {
    .top_message {
        top: 25%;
        width: 90%;
        max-width: auto;
        min-width: auto;
    }
    .top_message p {
        line-height: 1.6;
    }
}
@media (max-width: 540px) {
    .top_message span {
        font-size: clamp(1.7rem, 3vw, 1.4vw);
        border-bottom: dotted 5px #ffcb97;
    }
    .top_message p {
        padding-top: 20px;
        font-size: clamp(14px, 0.9vw, 15px);
        text-align: justify;
        line-height: 1.5;
    }
}
@media (max-width: 430px) {
    .top_message {
        top: 30%;
    }
}
@media (max-width: 338px) {
    .top_message {
        top: 32%;
    }
    .top_message p.sentence {
        padding-top: 16px;
        line-height: 1.5;
    }
}
.top_img {
    position: relative;
    z-index: 1;
    height: 100vh;
    background: url("../images/top_img.jpg");
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
}
@media screen and (max-width: 1440px) {
    .top_img {
        background-position: left 36% bottom 0;
    }
}
@media screen and (max-width: 540px) {
    .top_img {
        background-position: left -180px bottom -60px;
    }
}
@media (max-width: 430px) {
    .top_img {
        position: relative;
        z-index: 1;
        height: 100vh;
        background: url("../images/top_img_sp.jpg");
        background-position: left 0 bottom -40px;
        background-repeat: no-repeat;
        background-size: cover;
    }
}
.about {
    text-align: center;
    padding-bottom: 300px;
}
.about h2 {
    margin: 50px auto;
}
.about h2 span {
    color: #f98f41;
}
.about p {
    width: 45%;
    margin: 0 auto 100px;
    text-align: left;
}
.message {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 60vw;
    height: auto;
    margin: 0 auto 120px;
}
.message p {
    text-align: left;
    width: 80%;
    margin: 0 auto;
}
.message span {
    display: block;
    font-weight: 500;
    font-size: clamp(1.8rem, 2vw, 1.6vw);
    line-height: 1.2em;
    text-align: center;
}
.message1 {
    width: 22.4vw;
    height: 22.4vw;
    margin: 0 20px 20px 0;
    background-image: url("../images/dots.png");
    background-repeat: no-repeat;
    background-size: 150%;
    border-radius: 31.11% 31.11% 8.89% 31.11%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.message2 {
    width: 22.4vw;
    height: 22.4vw;
    border: solid 4px #ffcb97;
    border-radius: 31.11% 31.11% 31.11% 8.89%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.massage3 {
    width: 22.4vw;
    height: 22.4vw;
    margin: 0 20px 20px 0;
    border: solid 4px #ffcb97;
    border-radius: 31.11% 8.89% 31.11% 31.11%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.massage4 {
    width: 22.4vw;
    height: 22.4vw;
    background-image: url("../images/dots.png");
    background-repeat: no-repeat;
    background-size: 150%;
    border-radius: 8.89% 31.11% 31.11% 31.11%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.btn a {
    background-color: #ffcb97;
    border-radius: 10vw;
    padding: 1vw 4vw 1vw 2vw;
    text-align: left;
    position: relative;
    font-size: clamp(14px, 1vw, 18px);
}
.btn a::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    transform: rotate(45deg);
    position: absolute;
    margin-top: -4px;
    top: 50%;
    right: 2vw;
}
.dots1 {
    position: absolute;
    top: 0;
    right: calc(50% - 33%);
    width: 10%;
    height: auto;
}
.dots2 {
    position: absolute;
    top: 11%;
    left: calc(50% - 36%);
    width: 13%;
    height: auto;
}
.dots3 {
    position: absolute;
    top: 45%;
    right: calc(50% - 34%);
    width: 10%;
    height: auto;
}
.dots4 {
    position: absolute;
    bottom: 25%;
    left: calc(50% - 33%);
    width: 10%;
    height: auto;
}
.dots5 {
    position: absolute;
    bottom: 10%;
    right: calc(50% - 30%);
    width: 6%;
    height: auto;
}
@media (max-width: 1280px) {
    .about {
        padding-bottom: 150px;
    }
    .about p {
        width: 70%;
        margin: 0 auto 100px;
    }
    .message {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 80vw;
    height: auto;
    margin: 0 auto 100px;
}
    .message p {
        text-align: left;
        width: 80%;
        margin: 0 auto;
    }
    .message span {
        display: block;
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
    }
    .message1 {
        width: 30vw;
        height: 30vw;
    }
    .message2 {
        width: 30vw;
        height: 30vw;
    }
    .massage3 {
        width: 30vw;
        height: 30vw;
    }
    .massage4 {
        width: 30vw;
        height: 30vw;
    }
    .dots1 {
        right: calc(50% - 36%);
    }
    .dots2 {
        top: 17%;
        left: calc(50% - 40%);
        width: 14%;
        height: auto;
    }
    .dots3 {
        top: 45%;
        right: calc(50% - 40%);
        width: 13%;
        height: auto;
    }
    .dots4 {
        bottom: 15%;
    }
}
@media (max-width: 1000px) {
    .about {
        padding-bottom: 150px;
    }
    .about p {
        width: 70%;
        margin: 0 auto 50px;
    }
    .message {
        display: block;
        width: 38vw;
        height: auto;
        margin: 0 auto 100px;
    }
    .message p {
        text-align: left;
        width: 80%;
        margin: 0 auto;
    }
    .message span {
        display: block;
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
    }
    .message1 {
        width: 38vw;
        height: 38vw;
        margin: 0 0 20px;
        border-radius: 18%;
    }
    .message2 {
        width: 38vw;
        height: 38vw;
        border-radius: 18%;
        margin: 0 0 20px;
    }
    .massage3 {
        width: 38vw;
        height: 38vw;
        border-radius: 18%;
        margin: 0 0 20px;
    }
    .massage4 {
        width: 38vw;
        height: 38vw;
        border-radius: 18%;
        margin: 0 0 20px;
    }
    .dots1 {
        right: calc(50% - 36%);
    }
    .dots2 {
        top: 11%;
        left: calc(50% - 36%);
        width: 18%;
        height: auto;
    }
    .dots3 {
        top: 30%;
        width: 15%;
        height: auto;
    }
    .dots4 {
        bottom: 31%;
    }
}
@media (max-width: 800px) {
    .about {
        padding-bottom: 150px;
    }
    .about p {
        width: 80%;
        margin: 0 auto 50px;
    }
    .message {
        display: block;
        width: 50vw;
        height: auto;
        margin: 0 auto 100px;
    }
    .message p {
        text-align: left;
        width: 80%;
        margin: 0 auto;
    }
    .message span {
        display: block;
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
    }
    .message1 {
        width: 50vw;
        height: 50vw;
    }
    .message2 {
        width: 50vw;
        height: 50vw;
    }
    .massage3 {
        width: 50vw;
        height: 50vw;
    }
    .massage4 {
        width: 50vw;
        height: 50vw;
    }
    .dots1 {
        right: calc(50% - 36%);
    }
    .dots2 {
        top: 13%;
        left: calc(50% - 40%);
    }
    .dots3 {
        top: 30%;
    }
    .dots4 {
        bottom: 31%;
    }
}
@media (max-width: 550px) {
    .about {
        padding-bottom: 130px;
    }
    .about h2 {
        margin: 75px auto 20px;
    }
    .about p {
        width: 80%;
        margin: 0 auto 70px;
    }
    .message {
        width: 80vw;
        margin: 0 auto 100px;
    }
    .message p {
        margin: 0 auto;
    }
    .message1 {
        width: 80vw;
        height: 80vw;
    }
    .message2 {
        top: 11%;
        width: 80vw;
        height: 80vw;
    }
    .massage3 {
        width: 80vw;
        height: 80vw;
    }
    .massage4 {
        width: 80vw;
        height: 80vw;
    }
    .btn a {
        padding: 3vw 9vw 3vw 5vw;
    }
    .btn a::after {
        right: 4vw;
    }
    .dots1 {
        right: calc(50% - 36%);
        width: 18%;
        height: auto;
    }
    .dots2 {
        top: 12%;
        left: calc(50% - 45%);
        width: 26%;
        height: auto;
    }
    .dots3 {
        top: 33%;
        width: 24%;
        right: calc(50% - 46%);
    }
    .dots4 {
        bottom: 28%;
        width: 18%;
        left: calc(50% - 46%);
    }
    .dots5 {
        position: absolute;
        bottom: 10%;
        right: calc(50% - 42%);
        width: 11%;
        height: auto;
    }
}
@media (max-width: 450px){
    .dots2 {
        top: 14%;
    }
}
@media screen and (max-width: 390px) {
    .dots2 {
        top: 15%;
    }
}
.services {
    background-color: #fff7db;
    text-align: center;
    padding: 100px 0 100px;
    position: relative;
}
.services h2 {
    margin: 0 auto;
    border-bottom: dotted 4px #ffcb97;
    width: 6em;
    padding-bottom: 10px;
}
.services p {
    text-align: left;
}
.services_p {
    width: 45%;
    margin: 50px auto 100px;
}
.services h3 {
    text-align: left;
}
.services_inner {
    display: flex;
    justify-content: space-between;
    width: 60vw;
    height: auto;
    margin: 0 auto 60px;
}
.services2 {
    margin: 0 20px;
}
.services2 p {
    margin: 0;
    width: 100%;
}
.services_logo {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.services_logo img {
    width: 70px;
    height: auto;
    margin-right: 10px;
}
.services_logo span {
    font-size: 0.6em;
    font-weight: 400;
}
.services_img, .services_img2 {
    width: 25vw;
    min-width: 360px;
    height: 25vw;
    border-radius: 1vw;
    margin: 30px auto 100px;
}
.services_img {
    background: url("../images/nangoku_ai_img.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    filter: saturate(98%);
}
.services_img2 {
    background: url("../images/mitubachi1.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.services_img3 {
    position: absolute;
    bottom: -150px;
    left: -100px;
    width: 28vw;
    z-index: 3;
}
@media (max-width: 1280px) {
    .services {
        padding: 50px 0 80px;
    }
    .services h2 {
        padding-bottom: 6px;
        margin-bottom: 40px;
    }
    .services_p {
        width: 70%;
        margin: 0 auto 50px;
    }
    .services_inner {
        width: 70vw;
        height: auto;
        margin: 0 auto 60px;
    }
    .services2 {
        padding: 0 16px;
        margin: 0 0 100px;
    }
    .services2 p {
        width: 100%;
        font-size: clamp(16px, 1.1vw, 20px);
        margin: 20px 0;
    }
    .services_logo {
        margin-bottom: 0;
    }
    .services_logo img {
        width: 70px;
        height: auto;
        margin-right: 10px;
    }
    .services_img, .services_img2 {
        width: 33vw;
        height: 33vw;
        border-radius: 1vw;
        margin: 0 auto 50px;
    }
    .services_img3 {
        bottom: -80px;
        width: 35vw;
    }
}
@media (max-width: 1000px) {
    .services_inner {
        display: block;
        width: 45vw;
        height: auto;
        margin: 0 auto 60px;
    }
    .services2 {
        margin: 0 0 100px;
    }
    .services2 p {
        width: 100%;
        font-size: clamp(16px, 1.1vw, 20px);
        margin: 20px 0;
    }
    .services_logo {
        margin-bottom: 0;
        justify-content: center;
    }
    .services_logo img {
        width: 70px;
        height: auto;
        margin-right: 10px;
    }
    .services_img, .services_img2 {
        width: 40vw;
        min-width: auto;
        height: 40vw;
        min-height: 300px;
        border-radius: 1vw;
        margin: 0 auto 50px;
    }
    .services_img3 {
        bottom: -80px;
        width: 35vw;
    }
}
@media (max-width: 800px) {
    .services_inner {
        width: 80vw;
        height: auto;
        margin: 0 auto 60px;
    }
    .services_p {
        width: 80%;
        margin: 0 auto 50px;
    }
}
@media (max-width: 500px) {
    .services {
        padding: 50px 0 70px;
    }
    .services h2 {
        padding-bottom: 6px;
        margin-bottom: 30px;
    }
    .services h3 {
        font-weight: 500;
    }
    .services_p {
        width: 80%;
        margin: 0 auto 60px;
    }
    .services_inner {
        width: 90vw;
        height: auto;
        margin: 0 auto 60px;
    }
    .services2 {
        margin: 0 0 100px;
    }
    .services2 p {
        font-size: clamp(14px, 1vw, 18px);
        width: 100%;
        margin: 10px 0 20px;
    }
    .services_logo {
        margin-bottom: 0;
    }
    .services_logo img {
        width: 65px;
        height: auto;
        margin-right: 10px;
    }
    .services_img, .services_img2 {
        width: 80vw;
        height: 80vw;
        border-radius: 1vw;
        margin: 0 auto 50px;
    }
    .services_img3 {
        bottom: -3%;
        left: -35%;
        width: 60vw;
    }
}
#flow {
    position: relative;
    background-color: #fff7db;
    padding: 200px 0;
    margin-top: -150px;
}
#flow h2 {
    border-bottom: dotted 4px #ffcb97;
    width: 8em;
    padding-bottom: 10px;
    margin: 0 auto 80px;
}
.flow_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    width: 50vw;
    height: auto;
    margin: 0 auto 60px;
}
.flow_design {
    padding-left: 0;
}
.flow_design > li {
    list-style-type: none;
    position: relative;
    padding-left: 50px;
}
.flow_design > li:not(:last-child) {
    padding-bottom: 10px;
}
.flow_design > li .icon {
    width: 2.0em;
    height: 2.0em;
    line-height: 2.0em;
    text-align: center;
    border-radius: 100vh;
    display: inline-block;
    background: #ffcb97;
    color: #333;
    position: absolute;
    left: 5px;
}
.flow_design > li:not(:last-child)::before {
    content: "";
    background: #c3c3c3;
    width: 4px;
    height: 100%;
    position: absolute;
    top: calc(50% - -30px);
    left: 23px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.flow_design > li dl dt {
    font-size: 2em;
    font-weight: 600;
    color: #333;
    padding: 0 0 10px 20px;
}
.flow_design > li dl dd {
    margin-left: 0;
    font-size: 1.8em;
    padding: 0 0 20px 20px;
    text-align: justify;
}
.flow_design span {
    color: #f98f41;
    font-weight: 500;
}
@media (max-width: 1280px) {
    #flow {
        padding: 120px 0 100px;
    }
    #flow h2 {
        padding-bottom: 6px;
        margin: 0 auto 60px;
    }
    .flow_inner {
        width: 70vw;
    }
    .flow_design {
        padding-left: 0;
    }
    .flow_design > li {
        list-style-type: none;
        position: relative;
        padding-left: 40px;
    }
    .flow_design > li:not(:last-child) {
        padding-bottom: 10px;
    }
    .flow_design > li .icon {
        width: 1.8em;
        height: 1.8em;
        line-height: 1.8em;
        left: -3px;
    }
    .flow_design > li:not(:last-child)::before {
        width: 3px;
        left: 14px;
    }
    .flow_design > li dl dt {
        font-weight: 500;
    }
    .flow_design > li dl dd {
        margin-left: 0;
        font-size: 1.6em;
        line-height: 1.2em;
    }
    .flow_design span {
        color: #f98f41;
    }
}
@media (max-width: 800px) {
    .flow_inner {
        width: 80vw;
    }
}
@media (max-width: 500px) {
    #flow {
        padding: 120px 0 50px;
    }
    #flow h2 {
        margin: 0 auto 50px;
    }
    .flow_design > li {
        padding-left: 20px;
    }
    .flow_design > li:not(:last-child)::before {
        top: calc(50% - -26px);
        left: 13px;
    }
    .flow_design > li dl dt {
        font-size: 1.8em;
    }
}
#recruit {
    position: relative;
    padding: 400px 0 150px;
    margin-top: -300px;
}
#recruit h2 {
    border-bottom: dotted 4px #ffcb97;
    width: 6em;
    padding-bottom: 10px;
    margin: 0 auto 80px;
}
#recruit p {
    width: 50vw;
    margin: 0 auto;
}
#recruit a {
    color: #f98f41;
    font-weight: 500;
}
.recruit_img {
    position: absolute;
    width: 20vw;
    top: 100px;
    right: calc(50% - 35%);
    z-index: 3;
}
.p1 span {
    font-size: clamp(40px, 4vw, 50px);
    font-weight: 500;
    color: #f98f41;
}
.recruit_list {
    margin: 50px auto;
}
.recruit_list p {
    text-align: center;
    padding-bottom: 15px;
}
.recruit_list span {
    color: #f98f41;
}
.hw {
    display: block;
    width: 50vw;
    text-align: center;
    margin: 50px auto;
}
.hw img {
    width: 15vw;
}
@media (max-width: 1280px) {
    #recruit {
        position: relative;
        padding: 150px 0 100px;
        margin-top: -100px;
    }
    #recruit h2 {
        padding-bottom: 6px;
        margin: 0 auto 40px;
    }
    #recruit p {
        width: 70vw;
    }
    .recruit_img {
        top: -30px;
        right: calc(50% - 40%);
    }
    .recruit_list {
        margin: 40px auto;
    }
    .hw {
        width: 60vw;
        margin: 30px auto;
    }
    .hw img {
        width: 20vw;
    }
}
@media (max-width: 800px) {
    #recruit {
        position: relative;
        padding: 130px 0 100px;
        margin-top: -100px;
    }
    #recruit h2 {
        padding-bottom: 6px;
        margin: 0 auto 40px;
    }
    #recruit p {
        width: 80vw;
    }
    .recruit_img {
        top: -30px;
        right: calc(50% - 45%);
        width: 25%;
    }
    .recruit_list {
        margin: 40px auto;
    }
    .hw {
        width: 80vw;
        margin: 30px auto;
    }
    .hw img {
        width: 30vw;
    }
}
@media (max-width: 600px) {
    #recruit {
        padding: 150px 0 60px;
    }
    #recruit h2 {
        margin: 0 auto 30px;
    }
    #recruit p {
        width: 80vw;
    }
    .recruit_img {
        top: -2%;
        right: calc(50% - 45%);
        width: 35%;
    }
    .recruit_list {
        margin: 40px auto;
    }
    .recruit_list p {
        font-size: 1.3rem;
    }
    .hw {
        margin: 50px auto 40px;
    }
    .hw img {
        width: 60vw;
    }
}
#inquiry {
    padding: 170px 0 100px;
    margin-top: -50px;
}
#inquiry h2 {
    border-bottom: dotted 4px #ffcb97;
    padding-bottom: 10px;
    margin: 0 auto 30px;
    text-align: left;
    width: 50vw;
}
.p2 {
    width: 50vw;
    margin: 0 auto 30px;
}
.inquiry_img {
    display: flex;
    width: 50vw;
    height: auto;
    margin: 0 auto 20px;
    align-items: center;
}
.address_inner {
    display: flex;
    align-items: center;
}
.address_inner img {
    width: 13vw;
    max-width: 200px;
    min-width: 120px;
    height: auto;
    border-radius: 0.3vw;
}
.address {
    padding: 0 2vw 0 1vw;
}
.address span {
    display: block;
    font-weight: 500;
    padding-bottom: 15px;
}
.phone span {
    display: block;
    font-size: clamp(30px, 3vw, 35px);
    font-weight: 500;
}
.phone_img {
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: dotted 4px #ffcb97;
    padding-bottom: 10px;
}
.phone_img img {
    width: 3vw;
    max-width: 60px;
    min-width: 50px;
    height: 3vw;
    max-height: 60px;
    min-height: 50px;
    margin-right: 15px;
}
.phone_img p {
    font-size: clamp(16px, 1.6vw, 22px);
    font-weight: 500;
}
.p3 {
    text-align: center;
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 500;
}
.map {
    width: 50vw;
    margin: 0 auto;
}
.map img {
    width: 50vw;
    margin: 20px 0 30px;
}
.map p:nth-child(5) {
    padding-bottom: 40px;
}
.map a {
    color: #f98f41;
    font-size: clamp(14px, 1vw, 18px);
    padding-top: 40px;
    display: block;
    font-weight: 500;
}
.map span {
    font-weight: 500;
}
@media (max-width: 1280px) {
    #inquiry {
        padding: 160px 0 40px;
    }
    #inquiry h2 {
        padding-bottom: 6px;
        margin: 0 auto 15px;
        width: 70vw;
    }
    .p2 {
        width: 70vw;
        margin: 0 auto 15px;
    }
    .inquiry_img {
        width: 70vw;
    }
    .address_inner img {
        border-radius: 8px;
    }
    .address {
        width: 65%;
        padding: 0 2vw 0 1vw;
    }
    .address span {
        display: block;
        font-weight: 500;
        padding-bottom: 5px;
    }
    .phone span {
        display: block;
        font-size: clamp(30px, 3vw, 40px);
        font-weight: 500;
    }
    .phone_img {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: dotted 4px #ffcb97;
        padding-bottom: 10px;
    }
    .phone_img img {
        margin-right: 15px;
    }
    .map {
        width: 70vw;
        margin: 0 auto;
    }
    .map img {
        width: 100%;
        margin: 20px 0 30px;
    }
    .map p:nth-child(5) {
        padding-bottom: 40px;
    }
    .map a {
        color: #f98f41;
        font-size: clamp(14px, 1vw, 18px);
        padding-top: 40px;
        display: block;
    }
    .map span {
        font-weight: 500;
    }
}
@media (max-width: 800px) {
    #inquiry {
        padding: 130px 0 40px;
    }
    #inquiry h2 {
        padding-bottom: 6px;
        margin: 0 auto 15px;
        width: 80vw;
    }
    .p2 {
        width: 80vw;
        margin: 0 auto 15px;
    }
    .inquiry_img {
        width: 80vw;
    }
    .map {
        width: 80vw;
        margin: 0 auto;
    }
}
@media (max-width: 680px) {
    .inquiry_img {
        width: 80vw;
        display: block;
        margin-bottom: 50px;
    }
    .phone_img {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        border-bottom: dotted 4px #ffcb97;
        padding-bottom: 10px;
        width: 70%;
    }
    .address_inner {
        margin-bottom: 10px;
    }
    .address {
        padding: 0 2vw;
    }
    .p3 {
        text-align: center;
        width: 70%;
    }
    .map {
        width: 100vw;
        margin: 0 auto;
    }
    .map img {
        width: 100%;
        margin: 0 0 30px;
    }
    .map p {
        width: 90%;
        margin: 0 auto;
    }
    .map a {
        color: #f98f41;
        font-size: clamp(14px, 1vw, 18px);
        padding-top: 40px;
        display: block;
        width: 90%;
        margin: 0 auto;
    }
    .map span {
        font-weight: 500;
    }
}
@media (max-width: 430px) {
    #inquiry {
        padding: 100px 0 40px;
        margin-top: -60px;
    }
    #inquiry h2 {
        padding-bottom: 6px;
        margin: 0 auto 15px;
        width: 80vw;
    }
    .p2 {
        width: 80vw;
        margin: 0 auto 20px;
    }
    .inquiry_img {
        width: 80vw;
        display: block;
        margin-bottom: 50px;
    }
    .address {
        width: 100%;
        padding: 0 2vw 0 3vw;
    }
    .address span {
        display: block;
        font-weight: 500;
        padding-bottom: 5px;
    }
    .phone span {
        display: block;
        font-size: clamp(30px, 3vw, 40px);
        font-weight: 500;
    }
    .phone_img {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 90%;
    }
    .phone_img img {
        width: 2vw;
        min-width: 50px;
        height: 2vw;
        min-height: 50px;
        margin-right: 15px;
    }
    .phone_img p {
        width: 80%;
    }
    .p3 {
        text-align: center;
        width: 80%;
    }
}