@media screen and (max-width: 1100px) {

    /******************** header ********************/
    .header_img {
        display: block;
        height: auto;
        object-fit: cover;
        width: 200px;
        left: 50%;
        position: absolute;
        top: 25px;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
    }

    .nav {
        align-items: center;
        background-color: #f4efe6;
        display: flex;
        height: 100vh;
        justify-content: center;
        left: 50%;
        opacity: 0;
        position: fixed;
        top: 0;
        transition: 0.5s ease-in-out;
        visibility: hidden;
        width: 100%;
    }

    .nav ul {
        flex-direction: column;
        font-size: 1.6rem;
        gap: 0;
        list-style: none;
        position: absolute;
        text-align: center;
        top: 150px;
    }

    .nav li:not(:last-child) {
        margin-bottom: 30px;
    }

    .nav ul li:not(:first-child) {
        margin-left: 0;
    }

    .nav ul li::before,
    .nav ul li::after {
        display: none;
    }

    #navbtn {
        background: none;
        border: none;
        cursor: pointer;
        display: block;
        height: 20px;
        outline: none;
        padding: 0;
        position: fixed;
        right: 15px;
        top: 25px;
        width: 30px;
    }

    #navbtn::before,
    #navbtn::after {
        background-color: #665947;
        content: '';
        display: block;
        height: 1px;
        transform: translateY(10px);
        transition: 0.3s ease-in-out;
    }

    #navbtn::before {
        box-shadow: 0 10px #665947;
        transform: translateY(-10px);
    }

    #navbtn:nth-child(3)::after {
        color: #665947;
        content: "Menu";
        font-size: 1rem;
        left: 0px;
        padding-top: 1px;
        position: absolute;
        text-transform: uppercase;
        top: 9px;
        width: 30px;
    }

    .open #navbtn {
        z-index: 100;
    }

    .open #navbtn::before {
        box-shadow: none;
        transform: rotate(-45deg);
    }

    .open #navbtn::after {
        box-shadow: none;
        content: "";
        transform: rotate(45deg);
    }

    .open .nav {
        opacity: 1;
        visibility: visible;
    }

    /******************** header ********************/
    /******************** sec01 ********************/
    .br_sp {
        display: none;
    }

    .wrapper {
        max-width: 720px;
    }

    .section_title_lg {
        font-size: 2.2rem;
    }

    .section_title_img_02 {
        width: 320px;
    }

    .sec01 {
        padding: 98px 0 230px 0;
    }

    .sec01_img_04 {
        right: -10px;
    }

    .sec01_text_wrap {
        font-size: 1.6rem;
        line-height: 1.8;
    }

    .sec01_box_text {
        line-height: 1.8;
    }

    .sec01_text {
        margin-bottom: 20px;
    }

    .sec01_box_img_01 {
        left: -20px;
    }

    .sec01_box_img_02 {
        right: -10px;
        top: 330px;
    }

    /******************** sec01 ********************/
    /******************** sec02 ********************/
    #sec02 {
        scroll-margin-top: 180px;
      }

    .title_wrap_sec02 {
        top: -50px;
    }

    .section_title_sm_sec02 {
        top: -7px;
    }

    .sec02_img_01 {
        top: -95px;
    }

    .section_title_img_02 {
        top: 30px;
    }

    .sec02_flex {
        max-width: 720px;
        padding-top: 70px;
    }

    .balloon {
        min-width: 260px;
    }

    .btn-paper a {
        width: 260px;
    }

    .btn-circle-right-paper a::before {
        right: 10px;
    }

    .btn-circle-right-paper a::after {
        right: 15px;
    }

    .btn-paper a {
        font-size: 1.6rem;
    }

    /******************** sec02 ********************/
    /******************** sec03 ********************/

    .sec03 {
        padding: 70px 0 170px;
    }

    .sec03_contents_text {
        font-size: 1.6rem;
        line-height: 1.8;
    }

    .sec03_box_01 {
        height: 430px;
    }

    .sec03_box_02 {
        height: 178px;
    }

    .sec03_box_03 {
        height: 232px;
        margin-top: 20px;
    }

    .sec03_title {
        margin-top: 70px;
    }

    .sec03_box_line {
        margin: 0 auto;
        max-width: 70%;
    }

    .sec03_box_img_02 {
        top: 190px;
    }

    .section_subtitle {
        font-size: 1.8rem;
    }

    /******************** sec03 ********************/
    /******************** sec04 ********************/
    #sec04 {
        scroll-margin-top: 300px;
      }

    .sec04_img_01 {
        top: -198px;
    }

    .title_wrap_sec04 {
        top: -164px;
    }


    .section_title_img_02_sec04_tb {
        top: 43px;
    }

    .section_title_lg_sec04 {
        top: -120px;
    }

    .sec04_flex {
        gap: 20px;
        margin-top: 120px;

    }

    .sec04_img_wrap {
        width: 40%;
    }

    .table {
        font-size: 1.6rem;
    }

    .td_gr {
        width: 36%;
    }

    /******************** sec04 ********************/
    /******************** sec05 ********************/
    .sec05 {
        padding: 70px 0;
    }

    .sec05_text {
        font-size: 1.6rem;
    }

    .sec05_box {
        padding-top: 80px;
    }

    .sec05_img_01 {
        top: 45px;
    }

    .sec05_map_02 {
        padding-bottom: 300px;
    }

    /******************** sec05 ********************/
    /******************** footer ********************/
    .footer_flex {
        margin-bottom: 30px;
    }
}