@charset "UTF-8";

.factory_tour .message .sec_inner_2 {
    position: relative;
    padding-top: 100px;
    padding-bottom: 280px;
}

.factory_tour .message .sec_inner_2 p {
    max-width: 555px;
}

.factory_tour .message .sec_inner_2 .message_movie {
    position: absolute;
    top: 100px;
    right: calc(-50vw + 555px);
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}

.factory_tour .message .sec_inner_2 .message_movie video {
    width: 46.354vw;
    max-width: 890px;
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}

.sp-br {
    display: none;
}

@media screen and (max-width: 1480px) {
    .factory_tour .message .sec_inner_2 {
        padding-top: 6.7vw;
        padding-bottom: 18.9vw;
    }

    .factory_tour .message .sec_inner_2 p {
        max-width: 37.5vw;
    }

    .factory_tour .message .sec_inner_2 .message_movie {
        position: absolute;
        top: 6.7vw;
        right: -40vw;
        transform: translateX(-50%);
        border-top-left-radius: 30px;
        border-bottom-left-radius: 30px;
    }

    .factory_tour .message .sec_inner_2 .message_movie video {
        width: 46.354vw;
        max-width: 890px;
        border-top-left-radius: 30px;
        border-bottom-left-radius: 30px;
    }
}

@media screen and (max-width: 780px) {
    .factory_tour .message .sec_inner_2 {
        padding-top: 0;
        padding-bottom: 13vw;
    }

    .factory_tour .message .sec_inner_2 p {
        max-width: 100vw;
    }

    .factory_tour .message .sec_inner_2 .message_movie {
        position: relative;
        top: auto;
        right: 5vw;
        width: 100vw;
        transform: translateX(0);
        margin-bottom: 10vw;
    }

    .factory_tour .message .sec_inner_2 .message_movie video {
        width: 100vw;
        border-top-left-radius: 0px;
        border-bottom-left-radius: 0px;
    }

    .factory_tour .message .sec_inner_2 p {
        font-size: 3.733333333333334vw;
    }
}

.factory_tour .point .headline_1 {
    font-size: 42px;
    margin-bottom: 140px;
}

.factory_tour .point .point_sec {
    width: fit-content;
}

.factory_tour .point .sec_inner_2 {
    position: relative;
    padding-top: 100px;
}

.factory_tour .point .point_sec.right {
    margin-left: auto;
    margin-right: 0;
}

.factory_tour .point .point_sec figure {
    position: relative;
    z-index: 1;
}

.factory_tour .point .point_sec figure img {
    width: 420px;
    height: 280px;
}

.factory_tour .point .point_sec .point_sec_txt {
    position: relative;
    z-index: 2;
    margin-top: -31px;
    margin-left: 80px;
    background-color: #fff;
    border-radius: 30px;
    padding: 33px 22px 37px;
    max-width: 420px;
}

.factory_tour .point .point_sec .point_sec_title {
    margin-bottom: 14px;
    display: flex;
    flex-direction: row;
}

.factory_tour .point .point_sec .point_sec_title h3 {
    font-size: 30px;
    line-height: 63px;
    letter-spacing: 0.01em;
}

.factory_tour .point .point_sec .point_sec_title span {
    font-size: 54px;
    font-weight: bold;
    line-height: 63px;
    margin-right: 10px;
    letter-spacing: 0;
}

.factory_tour .point .point_sec .point_sec_txt p {
    font-size: 18px;
    letter-spacing: 0;
    line-height: 1.6;
}

.factory_tour .point .point02 {
    margin-top: -390px;
}

.factory_tour .point .point03 {
    margin-top: -40px;
}

.factory_tour .point .point04 {
    margin-top: -390px;
}

.factory_tour .point .point05 {
    margin-top: -40px;
}

.factory_tour .point .deco01 {
    position: absolute;
    width: 134px;
    height: 127px;
    top: 210px;
    right: 160px;
}

.factory_tour .point .deco02 {
    position: absolute;
    width: 120px;
    height: auto;
    bottom: 364px;
    right: 287px;
}

.factory_tour .point .deco03 {
    position: absolute;
    width: 260px;
    height: auto;
    bottom: 198px;
    right: 90px;
}

@media screen and (max-width: 1480px) {
    .factory_tour .point .headline_1 {
        font-size: calc(42 * 3.8vw / 54);
        margin-bottom: 9.38vw;
    }

    .factory_tour .point .point_sec figure img {
        width: 28vw;
        height: auto;
    }

    .factory_tour .point .point_sec .point_sec_txt {
        position: relative;
        z-index: 2;
        margin-top: -2vw;
        margin-left: 5vw;
        background-color: #fff;
        border-radius: 2vw;
        padding: 2.2vw 1.4vw 2.5vw;
        max-width: 32vw;
    }

    .factory_tour .point .point_sec .point_sec_title {
        margin-bottom: 0.9vw;
    }

    .factory_tour .point .point_sec .point_sec_title h3 {
        font-size: calc(30 * 3.8vw / 54);
        line-height: 3.394rem;
        letter-spacing: 0.01em;
    }

    .factory_tour .point .point_sec .point_sec_title span {
        font-size: calc(54 * 3.8vw / 54);
        line-height: 3.394rem;
        margin-right: 1.333vw;
    }

    .factory_tour .point .point_sec .point_sec_txt p {
        font-size: calc(18 * 3.8vw / 54);
        line-height: 1.6;
    }

    .factory_tour .point .point02 {
        margin-top: -26vw;
    }

    .factory_tour .point .point03 {
        margin-top: -2.7vw;
    }

    .factory_tour .point .point04 {
        margin-top: -26vw;
    }

    .factory_tour .point .point05 {
        margin-top: -2.7vw;
    }

    .factory_tour .point .deco01 {
        width: 8.978vw;
        height: auto;
        top: 14.07vw;
        right: 10.72vw;
    }

    .factory_tour .point .deco02 {
        width: 8.04vw;
        height: auto;
        bottom: 24.388vw;
        right: 19.229vw;
    }

    .factory_tour .point .deco03 {
        width: 17.42vw;
        height: auto;
        bottom: 13.266vw;
        right: 6.03vw;
    }
}

/* @media screen and (max-width: 1280px) {
    .factory_tour .point .point_sec .point_sec_txt {
        max-width: 340px;
    }
    .factory_tour .point .point_sec .point_sec_title h3 {
        font-size: 1.2rem;
        line-height: 2.394rem;
        letter-spacing: 0.01em;
    }
    .factory_tour .point .point_sec .point_sec_title span {
        font-size: 2.394rem;
        line-height: 2.394rem;
        margin-right: 1.333vw;
    }
    .factory_tour .point .point_sec .point_sec_txt p {
        font-size: 1rem;
        line-height: 1.6;
    }
} */
@media screen and (max-width: 768px) {
    .factory_tour .point .headline_1 {
        font-size: calc(42 / 750 * 100vw);
        margin-bottom: 11.2vw;
    }

    .factory_tour .point .point_sec figure img {
        width: 75vw;
        height: auto;
    }

    .factory_tour .point .point_sec .point_sec_txt {
        margin-top: -5.33vw;
        margin-left: 13.2vw;
        border-radius: 2vw;
        padding: 4vw 4vw 3.6vw;
        max-width: none;
    }

    .factory_tour .point .point_sec .point_sec_title {
        margin-bottom: 1.6vw;
    }

    .factory_tour .point .point_sec .point_sec_title h3 {
        font-size: 4.2vw;
        line-height: 21px;
    }

    .factory_tour .point .point_sec .point_sec_title span {
        font-size: 5.73vw;
        font-weight: bold;
        line-height: 21px;
        margin-right: 1.333vw;
    }

    .factory_tour .point .point_sec .point_sec_txt p {
        font-size: 3.73vw;
    }

    .factory_tour .point .point02 {
        margin-top: 13.2vw;
    }

    .factory_tour .point .point03 {
        margin-top: 13.2vw;
    }

    .factory_tour .point .point04 {
        margin-top: 13.2vw;
    }

    .factory_tour .point .point05 {
        margin-top: 13.2vw;
    }

    .factory_tour .point .deco01 {
        width: 13.2vw;
        height: auto;
        top: -2.37vw;
        right: 0;
    }

    .factory_tour .point .deco02 {
        width: 13.2vw;
        bottom: -7.46vw;
        right: 2.9vw;
    }

    .factory_tour .point .deco03 {
        display: none;
    }
}

.factory_tour .about .sec_inner_2 {
    position: relative;
}

.factory_tour .about .headline_1 {
    font-size: 42px;
    margin-bottom: 70px;
}

.factory_tour .about dl {
    border-top: dashed 1px #000000;
    display: flex;
    flex-wrap: wrap;
}

.factory_tour .about dt {
    border-bottom: dashed 1px #000000;
    font-weight: bold;
    width: 22.5%;
    padding: 30px 0 30px 30px;
}

.factory_tour .about dd {
    border-bottom: dashed 1px #000000;
    width: 77.5%;
    padding: 30px 0;
}

.factory_tour .about dd a {
    transition: ease 0.3s;
    color: #1336e6;
}

.factory_tour .about dd a:hover {
    opacity: 0.6;
}

.factory_tour .about .deco01 {
    position: absolute;
    width: 189px;
    height: 180px;
    transform: rotate(-18deg);
    top: -100px;
    left: -80px;
}

.factory_tour .about .deco02 {
    position: absolute;
    width: 182px;
    height: 365px;
    transform: rotate(22deg);
    bottom: -90px;
    right: -100px;
    z-index: 2;
}

@media screen and (max-width: 1480px) {
    .factory_tour .about .headline_1 {
        font-size: calc(42 * 3.8vw / 54);
    }

    .factory_tour .about dd {
        font-size: calc(18 * 3.8vw / 54);
    }

    .factory_tour .about dt {
        font-size: calc(18 * 3.8vw / 54);
    }

    .factory_tour .about .deco01 {
        width: 12.7vw;
        height: auto;
        top: -6.7vw;
        left: -5.4vw;
    }

    .factory_tour .about .deco02 {
        position: absolute;
        width: 12.2vw;
        height: auto;
        bottom: -6vw;
        right: -6.7vw;
    }
}

@media screen and (max-width: 780px) {
    .factory_tour .about .headline_1 {
        font-size: 5.6vw;
        margin-bottom: 11.2vw;
    }

    .factory_tour .about dl {
        flex-direction: column;
    }

    .factory_tour .about dt {
        width: 100%;
        border-bottom: none;
        padding: 4vw 0 3.2vw 0.666vw;
        line-height: 1;
        font-size: 3.73vw;
    }

    .factory_tour .about dd {
        width: 100%;
        padding: 0 0 4.26vw 0.666vw;
        line-height: 1.6;
        font-size: 3.73vw;
    }

    .factory_tour .about .deco01 {
        width: 16vw;
        height: auto;
        top: 7.714vw;
        left: 0;
    }

    .factory_tour .about .deco02 {
        width: 12.9vw;
        height: auto;
        transform: rotate(22deg);
        bottom: -23vw;
        right: 5.333vw;
    }
}

.factory_tour .access .headline_1 {
    font-size: 42px;
    margin-bottom: 70px;
}

.factory_tour .access .access_map iframe {
    width: 100%;
    height: 500px;
    border-radius: 30px;
}

.factory_tour .access .access_map_under {
    margin-top: 20px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}

.factory_tour .access .access_map_under p {
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 0;
}

@media screen and (min-width: 769px) {
    .factory_tour .access .access_map_under .btn_1 {
        color: #1336e6;
    }

    .factory_tour .access .access_map_under .btn_1::before {
        display: none;
    }

    .factory_tour .access .access_map_under .btn_1 .btn_before {
        stroke: #1336e6;
        content: "";
        display: block;
        position: absolute;
        left: 30px;
        top: 50%;
        transform: translateY(-50%);
        transition: ease 0.3s;
    }

    .factory_tour .access .access_map_under .btn_1 .btn_before line {
        transition: ease 0.3s;
    }

    .factory_tour .access .access_map_under .btn_1 .btn_before path {
        transition: ease 0.3s;
    }

    .factory_tour .access .access_map_under .btn_1:hover {
        color: #fff;
        background-color: #1336e6;
    }

    .factory_tour .access .access_map_under .btn_1:hover .btn_before {
        stroke: #fff;
    }

    .factory_tour .access .access_map_under .btn_1:hover .btn_before line {
        stroke: #fff;
    }

    .factory_tour .access .access_map_under .btn_1:hover .btn_before path {
        stroke: #fff;
    }
}

.factory_tour .access .access_method {
    margin-top: 40px;
}

.factory_tour .access .access_method h3 {
    font-size: 30px;
    margin-bottom: 18px;
}

.factory_tour .access .access_method p {
    font-size: 18px;
    letter-spacing: 0;
}

.factory_tour .access .access_method_inner {
    border-top: dashed 1px #4c4948;
    margin-top: 30px;
    padding-top: 28.5px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: 328px;
}

.factory_tour .access .access_method_inner_part p {
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: 0;
    margin-bottom: 32px;
}

.factory_tour .access .access_method_inner_part p span {
    font-weight: bold;
}

@media screen and (max-width: 1480px) {
    .factory_tour .access .headline_1 {
        font-size: calc(42 * 3.8vw / 54);
    }

    .factory_tour .access .access_method h3 {
        font-size: calc(30 * 3.8vw / 54);
    }

    .factory_tour .access .access_map_under p {
        font-size: calc(18 * 3.8vw / 54);
    }

    .factory_tour .access .access_method_inner_part p {
        font-size: calc(18 * 3.8vw / 54);
    }

    .factory_tour .access .access_method p {
        font-size: calc(18 * 3.8vw / 54);
    }

}

@media screen and (max-width: 1480px) and (min-width: 769px) {
    .factory_tour .access .access_map_under .btn_1 {
        border-radius: 4vw;
        font-size: calc(18 * 3.8vw / 54);
        padding-left: 3.6vw;
        padding-right: 1.8vw;
        padding-top: 0.75vw;
        padding-bottom: 0.75vw;
        height: auto;
    }

    .factory_tour .access .access_map_under .btn_1 .btn_before {
        left: 1.8vw;
        height: 0.8vw;
        width: 0.8vw;
    }
}

/* @media screen and (max-width: 1280px) {
    .factory_tour .access .access_method_inner {
        border-top: dashed 1px #4c4948;
        margin-top: 2vw;
        padding-top: 1.92vw;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        height: auto;
    }
    .factory_tour .access .access_method_inner_part p {
        font-size: 1.131rem;
        line-height: 1.6;
        letter-spacing: 0;
        margin-bottom: 2.16vw;
    }
} */
@media screen and (max-width: 780px) {
    .factory_tour .access .headline_1 {
        font-size: 5.6vw;
        margin-bottom: 8.57vw;
    }

    .factory_tour .access .access_map iframe {
        width: 100%;
        height: 42vw;
        border-radius: 4.28vw;
    }

    .factory_tour .access .access_map_under {
        margin-top: 4.28vw;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .factory_tour .access .access_map_under p {
        font-size: 3.73vw;
    }

    /* 
    .factory_tour .access .access_map_under .btn_1 {
        border-radius: 8vw;
        font-size: 4.6vw;
        padding-left: 12vw;
        padding-right: 8vw;
        padding-top: 3vw;
        height: 10vw;
        line-height: 4vw;
        margin-top: 2vw;
    }

    .factory_tour .access .access_map_under .btn_1 .btn_before {
        left: 6vw;
        height: 3vw;
        width: 3vw;
    } */

    .factory_tour .access .access_method {
        margin-top: 10px;
    }

    .factory_tour .access .access_method {
        margin-top: 30px;
    }

    .factory_tour .access .access_method h3 {
        font-size: 4.8vw;
        margin-bottom: 3.2vw;
    }

    .factory_tour .access .access_method p {
        font-size: 3.73vw;
        line-height: 1.6;
    }

    .factory_tour .access .access_method_inner {
        margin-top: 6.6vw;
        padding-top: 6.6vw;
        display: block;
        height: auto;
    }

    .factory_tour .access .access_method_inner_part p {
        font-size: 3.73vw;
        line-height: 1.6;
        letter-spacing: 0;
        margin-bottom: 6.6vw;
    }

    .factory_tour .access .access_method_inner_part p span {
        font-weight: bold;
    }

    .factory_tour .access .access_method_inner_part:last-child p {
        margin-bottom: 0;
    }
}

.factory_tour .contact_area {
    text-align: center;
    position: relative;
    padding-top: 300px;
}

.factory_tour .contact_area .contact_bg {
    position: absolute;
    width: 100%;
    height: 700px;
    top: 0;
    left: 0;
    background-image: url("../img/factory_tour/contact_bg.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.factory_tour .contact_area .headline_1 {
    font-size: 42px;
    margin-bottom: 75px;
}

.factory_tour .contact_area .sec_inner_2 {
    border-radius: 30px;
    position: relative;
    z-index: 2;
    background-color: #fff;
    padding-bottom: 0;
}

.factory_tour .contact_area .h_bottom {
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 0.021em;
    line-height: 2;
    margin-bottom: 72px;
}

/** tel_contact **/
.factory_tour .tel_contact {
    text-align: center;
    margin-bottom: 80px;
}

.factory_tour .contact_form {
    text-align: left;
    margin-bottom: 100px;
}

.form_ttl {
    text-align: center;
    margin-bottom: 43px;
    font-size: 1.5625vw;
}

.factory_tour .tel_contact .sec_inner_2 {
    border-bottom: dashed 1px #4c4948;
}

.factory_tour .tel_contact .number {
    display: table;
    font-size: 54px;
    font-weight: 700;
    line-height: 1;
    margin: 0 auto;
    padding-left: 55px;
    position: relative;
}

.factory_tour .tel_contact .number img {
    position: absolute;
    left: -15px;
    top: 0;
    width: 52px;
}

.factory_tour .tel_contact .time {
    margin-top: 30px;
    text-align: center;
}

.factory_tour .contact_area .deco01 {
    position: absolute;
    width: 227px;
    height: 179px;
    top: 311px;
    left: -44px;
}

.factory_tour .contact_area .deco02 {
    position: absolute;
    width: 160px;
    height: 212px;
    top: 429px;
    right: -40px;
}

.factory_tour .contact_area .btn_1 {
    color: #1336e6;
}

.factory_tour .contact_area .submit::before {
    background: url("../img/common/icon_arrow-1-blue.png") no-repeat center / 100%;
}

.factory_tour .contact_area .btn_1:hover {
    color: #fff;
    background-color: #1336e6;
}

.factory_tour .contact_area .submit:hover::before {
    background: url("../img/common/icon_arrow-1-white.png") no-repeat center / 100%;
}

.factory_tour .contact_form .agree .wpcf7-list-item {
    position: relative;
}

/* .factory_tour .contact_form .agree .wpcf7-list-item input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    top: 6px;
    left: 1px;
    width: 20px;
    height: 20px;
    margin: 0;
} */

/* .factory_tour .contact_form .agree .wpcf7-list-item-label {
    display: block;
    cursor: pointer;
} */

.factory_tour .contact_form .agree .wpcf7-list-item-label::before {
    content: "";
    border: 1px solid #4c4948;
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    top: 0px;
    vertical-align: middle;
    cursor: pointer;
    text-align: center;
    z-index: -2;
}

.factory_tour .contact_form .agree .wpcf7-list-item-label::after {
    content: "";
    display: block;
    position: absolute;
    top: 9px;
    left: 0px;
    width: 20px;
    height: 20px;
    background: url("../img/common/contact_checked.png") no-repeat center;
    background-size: contain;
    opacity: 0;
    z-index: -1;
}

.factory_tour .contact_form .agree .wpcf7-list-item input[type="checkbox"]:checked+.wpcf7-list-item-label::before {
    opacity: 0;
}

.factory_tour .contact_form .agree .wpcf7-list-item input[type="checkbox"]:checked+.wpcf7-list-item-label::after {
    opacity: 1;
}

@media screen and (max-width: 1480px) {
    .factory_tour .contact_area {
        padding-top: 20.1vw;
    }

    .factory_tour .contact_area .contact_bg {
        height: 46.9vw;
        background-image: url("../img/factory_tour/contact_bg.jpg");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }

    .factory_tour .contact_area .headline_1 {
        font-size: calc(42 * 3.8vw / 54);
        margin-bottom: 5.025vw;
    }

    .factory_tour .contact_area .sec_inner_2 {
        border-radius: 2vw;
    }

    .factory_tour .contact_area .h_bottom {
        font-size: calc(18 * 3.8vw / 54);
        margin-bottom: 4.824vw;
    }

    /** tel_contact **/
    .factory_tour .tel_contact h3 {
        font-size: calc(30 * 3.8vw / 54);
    }

    .factory_tour .tel_contact {
        font-size: 1.984rem;
    }

    .factory_tour .tel_contact {
        margin-bottom: 10.6vw;
    }

    .factory_tour .tel_contact .number {
        font-size: calc(54 * 3.8vw / 54);
        padding-left: 4vw;
    }

    .factory_tour .tel_contact .number img {
        left: -0.8vw;
        width: 3.6vw;
    }

    .factory_tour .tel_contact .time {
        font-size: calc(18 * 3.8vw / 54);
        margin-top: 2.2vw;
    }

    /** contact_form **/
    .factory_tour .contact_form {
        margin-top: 3vw;
    }

    .factory_tour .contact_form dt {
        line-height: 3vw;
        width: 16vw;
        font-size: calc(18 * 3.8vw / 54);
    }

    .factory_tour .contact_form dt .must {
        font-size: calc(16 * 3.8vw / 54);
        letter-spacing: 0.2vw;
        padding: 0.06vw;
        padding-left: 0.2vw;
        padding-top: 0.1vw;
        top: 0.8vw;
    }

    .factory_tour .contact_form dd {
        margin-bottom: 3vw;
        margin-left: 18vw;
    }

    .factory_tour .contact_form .submit {
        margin: 3vw auto 0;
    }

    .factory_tour .contact_form .submit::before {
        left: 2vw;
        height: 0.8vw;
        width: 0.8vw;
    }

    .factory_tour .contact_form input[type="text"],
    .factory_tour .contact_form input[type="tel"],
    .factory_tour .contact_form input[type="email"],
    .factory_tour .contact_form input[type="date"],
    .factory_tour .contact_form input[type="number"] {
        border-radius: 0.8vw;
        padding: 0 1vw;
        height: 3vw;
    }

    .factory_tour .contact_form textarea {
        border-radius: 0.8vw;
        padding: 0 1vw;
        height: 14vw;
    }

    .factory_tour .contact_form .wpcf7-not-valid-tip {
        font-size: 1.05vw;
    }

    .factory_tour .contact_form .wpcf7-list-item {
        margin-right: 0.8vw;
    }

    .factory_tour .contact_area .deco01 {
        display: none;
    }

    .factory_tour .contact_area .deco02 {
        display: none;
    }
}

/* @media screen and (max-width: 1280px) {
    .factory_tour .contact_form dt {
        font-size: 0.88rem;
    }
    .factory_tour .contact_form dt .must {
        font-size: 0.88rem;
    }
    .factory_tour .tel_contact .number img {
        top: calc(50% - 2vw);
    }
} */
@media screen and (max-width: 780px) {
    .form_ttl {
        margin-bottom: 11.52vw;
        font-size: 4.44vw;
    }

    .factory_tour .contact_area {
        padding-top: 0;
    }

    .factory_tour .contact_area .contact_bg {
        position: relative;
        width: 100%;
        height: 45vw;
        background-image: url("../img/factory_tour/contact_bg.jpg");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }

    .factory_tour .contact_area .headline_1 {
        font-size: 5.6vw;
        margin-bottom: 4.02vw;
    }

    .factory_tour .contact_area .h_bottom {
        font-size: 3.73vw;
        letter-spacing: 0.0336em;
        margin-bottom: 5.58vw;
    }

    .factory_tour .contact_form {
        text-align: left;
        margin-bottom: 14.285vw;
    }

    /** tel_contact **/
    .factory_tour .tel_contact h3 {
        margin-bottom: 6.26vw;
        font-size: 4.26vw;
    }

    .factory_tour .tel_contact .number {
        margin-bottom: 4vw;
        font-size: 7.6vw;
        padding-left: 8vw;
    }

    .factory_tour .tel_contact .number img {
        left: -2vw;
        width: 7.4vw;
        top: 0;
    }

    .factory_tour .tel_contact .time {
        font-size: 3.73vw;
        margin-top: initial;
    }

    /** contact_form **/
    .factory_tour .contact_form {
        padding-top: 10.6vw;
        margin: 0px 6vw 12vw;
        border-top: dashed 2px #000000;
        width: auto;
    }

    .factory_tour .contact_form dt {
        align-items: center;
        display: flex;
        float: none;
        font-size: calc(28 / 750 * 100vw);
        line-height: 1.6;
        margin-bottom: 1vw;
        width: auto;
    }

    .factory_tour .contact_form dt .must {
        display: inline-block;
        font-size: calc(24 / 750 * 100vw);
        letter-spacing: 0.6vw;
        margin-left: 3vw;
        padding: 0.4vw;
        padding-left: 1vw;
        padding-top: 0.5vw;
        position: relative;
        right: auto;
        top: auto;
    }

    .factory_tour .contact_form dd {
        margin-bottom: 6vw;
        margin-left: 0;
    }

    .factory_tour .contact_form .agree {
        font-size: calc(28 / 750 * 100vw);
        margin-bottom: 6vw;
        margin-top: 10vw;
    }

    .factory_tour .contact_form .submit {
        margin: 3vw auto 0;
    }

    .factory_tour .contact_form .submit::before {
        left: 6vw;
        height: 3vw;
        width: 3vw;
    }

    .factory_tour .contact_form .submit .btn_1 {
        font-size: calc(32 / 750 * 100vw);
        height: auto;
        padding-top: 3vw;
        padding-bottom: 3vw;
    }

    .factory_tour .contact_form input[type="text"],
    .factory_tour .contact_form input[type="tel"],
    .factory_tour .contact_form input[type="email"],
    .factory_tour .contact_form input[type="date"],
    .factory_tour .contact_form input[type="number"] {
        border-radius: 1.6vw;
        padding: 0 2vw;
        height: 8vw;
        font-size: calc(30 / 750 * 100vw);
    }

    .factory_tour .contact_form textarea {
        border-radius: 1.6vw;
        padding: 0 2vw;
        height: 38vw;
    }

    .factory_tour .contact_form .wpcf7-not-valid-tip {
        font-size: 3vw;
    }

    .factory_tour .contact_form .wpcf7-list-item {
        margin-right: 2vw;
    }
}

@media (max-width: 780px) {
    .sp-br {
        display: block;
    }
}