@charset "UTF-8";

/*==================================================================================================

       hero

===================================================================================================*/

.hero-wrap {
        position: relative;
        box-sizing: border-box;
        margin-top:70px;
        padding:0 30px 30px;
        z-index: 1;
        }
        .hero-wrap-s {
        position: relative;
        box-sizing: border-box;
        margin-top:70px;
        z-index: 1;
        }
        @media screen and (max-width:1200px) {
        .hero-wrap { margin-top:90px; padding:0 25px 25px; }
        .hero-wrap-s { margin-top:90px; }
        }
        @media screen and (max-width:1024px) {
        .hero-wrap { margin-top:90px; padding:0 20px 20px; }
        }
        @media screen and (max-width:767px) {
        .hero-wrap { margin-top:90px; padding:0 10px 10px; }
        }

.page-header-wrap {
        position: relative;
        box-sizing: border-box;
        height: auto;
        overflow: hidden;
        z-index: 0;
        }
        .page-header {
        position: relative;
        width: 100%;
        height:calc(100vh - 100px);
        overflow: hidden;
        z-index: 0;
        }
        .toppage      { background: url("../images/img/main.jpg") center center / cover; }

        @media screen and (max-width: 1200px) {
        .page-header {  height:calc(100vh - 174px); }
        }
        @media screen and (max-width: 767px) {
        .page-header {  height:calc(100vh - 160px); }
        }

        /*=================================================
                main-catch
        ==================================================*/

.main-catch-wrap {
        position: absolute;
        bottom: 0;
        right:0;
        color:#FFF;
        width:100%;
        height: 400px;
        box-sizing: border-box;
        z-index:1;
        }
        .main-catch-wrap:after {
        content:"";
        display: block;
        position: absolute;
        top:0;
        right:0;
        width:150%;
        height: 100%;
        background: rgb(34 46 50 / .6);
        transform-origin:right top;
        rotate:-25deg;
        z-index: 0;
        }
        .main-catch {
        position: absolute;
        text-align: right;
        right:5vw;
        bottom:4vw;
        box-sizing: border-box;
        color:#FFF;
        z-index: 2;
        }
        .main-catch h1 {
        font-size:clamp(30px, 4.5vw, 150px);
        line-height: 1;
        }
        .main-catch p {
        
        }
        @media screen and (max-width:1600px) {
        .main-catch-wrap { height:30vw; }
        }
        @media screen and (max-width:1024px) {
        .main-catch h1 { font-size:clamp(30px, 6.5vw, 150px); }
        }
        @media screen and (max-width:767px) {
        .main-catch-wrap { height:35vw; }
        }

/*==================================================================================================

       背景

===================================================================================================*/

.border-box {
        border:4px solid rgb(0 0 0 / .4);
        padding:80px 60px;
        box-sizing: border-box;
        overflow: hidden;
        border-radius: 0px;
        }

.bg-side {
        position: relative;
        z-index: 0;
        }
        .bg-side:after {
        content:"";
        display: block;
        position: absolute;
        right:0;
        bottom:0;
        width:32%;
        height:135%;
        background: #3A788F;
        z-index: -1;
        }

.bg-black {
        background: #232E32;
        color:#FFF;
        }
        .bg-black:after {
        content:"";
        display: block;
        position: absolute;
        width:100%;
        height:12vw;
        bottom:-10vw;
        left:0;
        background: #232E32;
        z-index: -1;
        }
        .bg-black a { color:#FFF; }


.bg-slash {
        position: relative;
        width:100%;
        z-index: 1;
        }
        .bg-slash:before {
        content:"";
        display: block;
        position: absolute;
        width:200%;
        height:20vw;
        top:0;
        left:50%;
        translate:-50%;
        transform-origin: center top;
        rotate:4deg;
        background: #FFF;
        border-top:40px solid #4292AF;
        z-index: -1;
        }
.bg-grad {
        position: relative;
        width:100%;
        z-index: 1;
        }
        .bg-grad:before {
        content:"";
        display: block;
        position: absolute;
        width:100%;
        height:20vw;
        top:0;
        left:0;
        background: #F3F3F3;
        background: linear-gradient(180deg, rgba(243, 243, 243, 1) 0%, rgba(255, 255, 255, 1) 100%);
        z-index: -1;
        }

        @media screen and (max-width:1600px) {
        .bg-slash:before { border-top:2.5vw solid #4292AF; }
        }
        @media screen and (max-width:1024px) {
        .border-box  {  }
        .bg-side:after { width:42%; }
        }
        @media screen and (max-width:767px) {
        .border-box  { padding:10% 10%; }
        .bg-slash:before { border-top:5vw solid #4292AF; }
        }

/*==================================================================================================

        タイトル / テキスト

===================================================================================================*/

.white { color:#EEEAE5 !important; }
.blue { color:#3A788F; }
    .bg-black .blue { color:#5396A1; }

.under-title {
        padding-bottom:.35rem;
        border-bottom:2px solid #1F1E1D;
        }

.bar-title {
        position: relative;
        padding-bottom:12px;
        }
        .bar-title:before {
        content:"";
        display: block;
        position: absolute;
        bottom:0;
        left:0;
        width:40px;
        height:2px;
        background:#5396A1;
        }

.page-title {
        position: relative;
        margin-top:70px;
        background: #142636;
        color:#FFF;
        text-align: center;
        padding:2.5em 1.5em;
        box-sizing: border-box;
        }


        @media screen and (max-width:1024px) {
        
        }
        @media screen and (max-width:767px) {
        
        
        }

/*==================================================================================================

       トップページ

===================================================================================================*/

        /*=================================================
                GREETING
        ==================================================*/

        .greeting-wrap {
        background: #FFF;
        box-sizing: border-box;
        }
        @media screen and (max-width:1024px) {
        .greeting-wrap { padding:10%; }
        }
        @media screen and (max-width:767px) {
        .greeting-wrap { padding:18% 8% 18% 0; }
        }

        /*=================================================
                PRICE
        ==================================================*/

        .price-table {
        width:100%;
        border-collapse:collapse;
        border-spacing:0px;
        text-align:left;
        letter-spacing:0;
        box-sizing: border-box;
        line-height: 150%;
        font-size:1rem;
        overflow: hidden;
        border: 1px solid #AFAFAF;
        }
        .price-table th {
        padding:2rem 1.5rem;
        vertical-align: middle;
        text-align:center;
        box-sizing: border-box;
        font-weight:500;
        border: 1px solid #AFAFAF;
        }
        .price-table td {
        padding:2rem 1.5rem;
        vertical-align: top;
        text-align:center;
        box-sizing: border-box;
        border: 1px solid #AFAFAF;
        }
        .price-table td.text-l { text-align: left; }
        .price-table thead th {
        font-size:21px;
        background:#142636;
        color:#FFF; 
        padding:3rem 1.5rem;
        }
        .price-table thead tr th:nth-child(2) {
        width:40%;
        font-size:27px;
        background: #1BA8B2;
        background: linear-gradient(150deg, rgba(27, 168, 178, 1) 0%, rgba(13, 143, 152, 1) 100%);
        }
        .price-table thead tr th:nth-child(3) {
        width:40%;
        font-size:27px;
        background: #146C7D;
        background: linear-gradient(150deg, rgba(20, 108, 125, 1) 0%, rgba(10, 54, 63, 1) 100%);
        }
        .price-table tbody th { background:#E0E0E0; }
        .price-table tbody tr:nth-child(odd) th { background:#EFEFEF; }
        .price-table tbody td { background:#F4F4F4; }
        .price-table tbody tr:nth-child(odd) td { background:#FFF; }

        @media screen and (max-width:1024px) {
        .price-table thead th { font-size:19px; }
        .price-table thead tr th:nth-child(2) { font-size:21px; }
        .price-table thead tr th:nth-child(3) { font-size:21px; }
        }

        @media screen and (max-width:767px) {
        .price-table { font-size:13px; }
        .price-table thead th { padding:1.5rem 1rem; }
        .price-table thead tr th:nth-child(1) { display: none; }
        .price-table tbody tr th:nth-child(1) { display: none; }
        .price-table thead tr th:nth-child(2) { width:50%; font-size:16px; }
        .price-table thead tr th:nth-child(3) { width:50%; font-size:16px; }
        .price-table td { padding:1.5rem 1rem; vertical-align: top; }
        .price-table td .f45 { font-size:21px; }
        }

        /*=================================================
                COST
        ==================================================*/

        .cost-table {
        width:100%;
        border-collapse:collapse;
        border-spacing:0px;
        text-align:left;
        letter-spacing:0;
        box-sizing: border-box;
        line-height: 150%;
        font-size:1rem;
        overflow: hidden;
        border: 1px solid #AFAFAF;
        }
        .cost-table th {
        padding:2rem 1.5rem;
        vertical-align: middle;
        text-align:center;
        box-sizing: border-box;
        font-weight:500;
        border: 1px solid #AFAFAF;
        }
        .cost-table td {
        padding:2rem 1.5rem;
        vertical-align: top;
        text-align:center;
        box-sizing: border-box;
        border: 1px solid #AFAFAF;
        }
        .cost-table td.text-l { text-align: left; }
        .cost-table thead th {
        font-size:21px;
        background:#142636;
        color:#FFF; 
        padding:3rem 1.5rem;
        }
        .cost-table thead tr th:nth-child(2) {
        width:50%;
        font-size:27px;
        background: #1BA8B2;
        background: linear-gradient(150deg, rgba(27, 168, 178, 1) 0%, rgba(13, 143, 152, 1) 100%);
        }
        .cost-table tbody th { background:#E0E0E0; }
        .cost-table tbody tr:nth-child(odd) th { background:#EFEFEF; }
        .cost-table tbody td { background:#F4F4F4; }
        .cost-table tbody tr:nth-child(odd) td { background:#FFF; }

        @media screen and (max-width:1024px) {
        .cost-table thead th { font-size:19px; }
        .cost-table thead tr th:nth-child(2) { font-size:21px; }
        }

        @media screen and (max-width:767px) {
        .cost-table { font-size:13px; }
        .cost-table thead th { padding:1.5rem 1rem; }
        .cost-table thead tr th:nth-child(2) { width:50%; font-size:16px; }
        .cost-table td { padding:1.5rem 1rem; vertical-align: top; }
        .cost-table td .f45 { font-size:21px; }
        }

.is-nomber p.blue { opacity: .35; font-weight:700; } 
.is-nomber-text p {
        color:#BBB;
        }


/*==================================================================================================

       BLOG 一覧ページ

===================================================================================================*/

        .item-content {
        padding:1.5rem 0 0;
        }

        .list-item-date {
        font-size:13px;
        text-align: right;
        padding:1rem 0 .6rem;
        line-height: 1;
        opacity:.5;
        }
        h3.list-item-title {
        position: relative;
        font-weight: 400;
        line-height: 160%;
        font-size: 1rem;
        -webkit-transition: all .3s ease;
                transition: all .3s ease;
        }
        .news-item-box a:hover .list-item-title { opacity: .5;}
        .blog-list-cat {
        position: relative;
        line-height: 100%;
        }
        .blog-list-cat li {
        display: inline-block;
        padding:0 10px 0 0;
        line-height: 1;
        margin-right:2px;
        margin-bottom:2px;
        font-size:12px;
        border-right:1px solid rgb(255 255 255 / .6);
        }
        
        .blog-list-cat a:last-child { border-right: none; }
        .blog-list-cat a:hover { text-decoration:underline; } 
        
        @media screen and (max-width:1350px) {
        .list-item-date { padding:.75rem 0 .5rem;font-size:12px; }
        h3.list-item-title { font-size: 15px; }
        }
        @media screen and (max-width:1024px) {
        .list-item-date { padding:.7rem 0 .4rem;font-size:10px; }
        h3.list-item-title { font-size: 14px; }
        .blog-list-cat a { font-size:10px; padding:4px 6px; }
        }
        @media screen and (max-width:767px) {
        }

        /*=================================================
                一覧ページャー
        ==================================================*/

        .pagenation-wrap {
        position: relative;
        padding-top:5rem;
        padding-bottom:5rem;
        clear: both;
        width:100%;
        }
        .pagenation-wrap ul {
        position: relative;
        text-align: center;
        list-style: none;
        }
        .pagenation-wrap li {
        position: relative;
        margin-right: .3rem;
        margin-bottom: 5px;
        display:inline-block;
        }
        .pagenation-wrap li a {
        display: block;
        color: #232E32;
        padding: 12px 0;
        font-size:1rem;
        font-weight:400;
        line-height:1;
        text-align: center;
        width:40px;
        box-sizing: border-box;
        border-radius:1px;
        background: #FFF;
        border: 1px solid #232E32;
        }
        .pagenation-wrap li a:hover {
        background-color:#5396A1;
        border: 1px solid #5396A1;
        color:#FFF;
        }
        .pagenation-wrap li .current {
        display: block;
        color: #FFF;
        padding: 12px 0;
        font-size:1rem;
        line-height:1;
        text-align: center;
        width:40px;
        background:#232E32;
        border: 1px solid #232E32;
        text-decoration: none;
        border-radius:1px;
        }
        @media screen and (max-width:767px) {
        .pagenation-wrap { padding-top:2rem;}
        }

/*==================================================================================================

       投稿　Post

===================================================================================================*/

        .post-item-wrap {
        border:1px solid rgb(0 0 0 / .5);
        padding:8rem 4rem;
        box-sizing: border-box;
        }
        .post-item-inner {
        width:100%;
        max-width:900px;
        margin-inline:auto;
        }
        @media screen and (max-width:1800px) {
        .post-item-wrap { padding:7.125vw 4rem; }
        }
        @media screen and (max-width:1024px) {
        .post-item-wrap { padding:7.125vw 3.5rem; }
        }
        @media screen and (max-width:767px) {
        .post-item-wrap { padding:7.125vw 2rem; }
        }


        .post-title {
        line-height: 160%;
        padding: 1em 0 .5rem;
        margin-bottom:3rem;
        border-bottom:3px solid #3C3C3B;
        font-size:1.4rem;
        }
        .post-cat {
        text-align: right;
        }
        .post-date { font-size:.866666rem; padding:.5rem 0 2.5rem; text-align: right; }


        .post-content {
            position: relative;
            padding-bottom: 3rem;
            text-align: center;
            }
            .post-content p { padding-bottom:3rem; text-align: left; }
            .post-content img { margin-bottom:1rem; }
            .post-content p img { margin-bottom:1rem; }
            .post-content p:has(img) { text-align: center; }
            .post-content p span { display: block; }

            .post-content h2 { padding:2rem 0 .5rem; margin:0 auto 1.5rem; font-size:1.25rem; line-height: 160%; font-weight:500; text-align: left; border-bottom:1px solid #3C3C3B; }
            .post-content h3 { padding:2rem 0 .5rem; margin:0 auto 1.5rem; font-size:1.125rem; line-height: 160%; font-weight:500; text-align: left; border-bottom:1px solid #3C3C3B; }
            .post-content h4 { padding:2rem 0 1.25rem; margin:0 auto; font-size:1.075rem; line-height: 160%; font-weight:500; text-align: left; }
            .post-content h5 { padding:2rem 0 1.25rem; margin:0 auto; font-size:1.075rem; line-height: 160%; font-weight:500; text-align: left; }
            .post-content a { font-weight:600; color:#184383; text-decoration: underline; }
            .post-content a:hover { color:#AAA;}
            .post-content p.more { padding-bottom:10px; }
            .post-content blockquote { padding: 2.5rem; border: 4px solid #CCC; background-color: #f7f7f7; line-height: 220%; margin-bottom:3rem; }
            .post-content blockquote p { padding-bottom:0; font-weight:400; }


        .post-footer {
        padding-top:2rem;
        padding-bottom:1rem;
        border-bottom:3px solid #3C3C3B;
        }

        @media screen and (max-width:1024px) {
        .post-content blockquote { padding: 2rem; border: 3px solid #CCC; line-height: 220%; }
        }
        @media screen and (max-width:767px) {
        .post-memo-wrap { padding:1.25rem 1.5rem; }
        .post-content blockquote { padding: 1.5rem; border: 2px solid #CCC; line-height: 200%; }
        }

        /*=================================================
                投稿　ページャー
        ==================================================*/

        .post-pager {
        padding:2em 0 1.5em;
        }
        .prev-pager,
        .next-pager {
        height:100%;
        line-height:135%;
        position: relative;
        }
        .prev-pager { float:left;}
        .next-pager { float:right; }
        .prev-pager a {
        display: block;
        width:120px;
        height:50px;
        line-height: 48px;
        box-sizing:border-box;
        color:#292A2B;
        text-align: center;
        border:1px solid #292A2B;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        }
        .prev-pager a:after {
        position: absolute;
        content: "";
        width: 0;
        height:100%;
        bottom:0;
        right: 0;
        z-index: -1;
        border-radius:0;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        background:#3C3C3B;
        }
        .prev-pager a:hover {
        opacity:1;
        color:#FFF;
        }
        .prev-pager a:hover:after {
        left: 0;
        width: 100%;
        }

        .next-pager a {
        display: block;
        width:120px;
        height:50px;
        line-height: 48px;
        box-sizing:border-box;
        border:1px solid #292A2B;
        color:#292A2B;
        text-align: center;
        -webkit-transition: all 0.3s ease;
         transition: all 0.3s ease;
        }
        .next-pager a:after {
        position: absolute;
        content: "";
        width: 0;
        height:100%;
        bottom:0;
        right: 0;
        z-index: -1;
        border-radius:0;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        background:#3C3C3B;
        }
        .next-pager a:hover {
        opacity:1;
        color:#FFF;
        }
        .next-pager a:hover:after {
        left: 0;
        width: 100%;
        }


        @media screen and (max-width:767px) {
        .prev-pager a { width:100px; height:46px; line-height: 44px; }
        .next-pager a { width:100px; height:46px; line-height: 44px; }
        }

/*==================================================================================================

       カテゴリー・アーカイブ　サイドバー

===================================================================================================*/

        .cat-btn {
        position:relative;
        width:100%;
        max-width:300px;
        line-height: 1;
        }
        .cat-btn a {
        width:100%;
        height:46px;
        line-height:48px;
        text-align: center;
        color:#FFF;
        font-weight:400;
        background: #142636;
        border-radius:0px;
        box-sizing: border-box;
        overflow: hidden;
        font-size:15px;
        white-space: nowrap;
        text-decoration:none !important;
        position: relative;
        z-index: 1;
        letter-spacing: 0em;
        display: inline-block;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        }
        .cat-btn a:after {
        position: absolute;
        content: "";
        width: 0;
        height:100%;
        bottom:0;
        right: 0;
        z-index: -1;
        border-radius:0;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        background:rgb(255 255 255 / .3);
        }
        .cat-btn a:hover {
        opacity:1;
        }
        .cat-btn a:hover:after {
        left: 0;
        width: 100%;
        }
        @media screen and (max-width:1024px) {
        .cat-btn a { font-size:14px; }
        }
        @media screen and (max-width:767px) {
        .cat-btn a { height:42px; line-height:43px; font-size:13px; }
        }

.cat-overlay,.archive-overlay {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background:rgb(255 255 255 / .95);
        position:fixed;
        top: 0;
        left: 0;
        z-index: -10;
        opacity: 0;
        }
        .cat-overlay.open,.archive-overlay.open  {
        width: 100%;
        height: 100%;
        opacity: 1;
        z-index: 10001;
        cursor: pointer;
        }
        .cat-trigger,.archive-trigger {
        z-index:10100;
            }
        .cat-modal,.archive-modal {
        width: 300px;
        height: 100%;
        padding-top: 60px;
        background:#142636;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 100002;
        transform: translate(300px);
        transition: all .4s;
        overflow-y: scroll;
        }
        .cat-modal.open,.archive-modal.open {
        transform: translateZ(0);
        }
.cat-outer {
        padding:0 1rem 120px;
        color:#FFF;
        }
        .cat-outer.desktop {
        padding:0 0 3rem;
        }
        .cat-outer h2 {
        font-size:1.06666rem;
        padding-bottom:1rem;
        }
        .cat-outer > ul {
        border-top: 1px solid rgb(255 255 255 / .3);
        }
        .cat-outer li {
        width:100%;
        position:relative;
        text-align: center;
        }
        
        .cat-outer li a {
        position: relative;
        display: block;
        width:100%;
        padding:13px 10px;
        font-size:13px;
        color:#FFF;
        text-align: left;
        line-height: 150%;
        box-sizing: border-box;
        border-bottom: 1px solid rgb(255 255 255 / .3);
        letter-spacing: 0.01em;
        -webkit-transition: all 0.3s ease;
                transition: all 0.3s ease;
        }
        .cat-outer li li a {
        padding-left:13px;
        }
        .cat-outer li li a:before {
        content:"-";
        display: inline-block;
        margin-right:.5em;
        color:#FFF;
        }
        .cat-outer li li li a:before {
        content:"- -";
        display: inline-block;
        margin-right:.5em;
        color:#FFF;
        }
        .cat-outer li a:hover {
        background:rgb(221 208 185 / .3);
        color:#FFF;
        }
        .cat-outer li a:hover span:after {
        width:100%;
        }
.cat-close,.archive-close {
        position:absolute;
        right:0;
        top:0;
        padding:0;
        width:100%;
        height:60px;
        text-align: center;
        font-size: 0px;
        letter-spacing: 0;
        box-sizing: border-box;
        pointer-events: auto;
        cursor:pointer;
        z-index:999999;
        }
        .cat-close span,.archive-close span { display: block; position: absolute; height: 1px; width:25px; background: #FFF; border-radius:2px; left: 0; -webkit-transition: .35s ease-in-out;transition: .35s ease-in-out; }
        .cat-close span:nth-child(1),.archive-close span:nth-child(1) { top: 30px; left:20px; transform: rotate(315deg);}
        .cat-close span:nth-child(2),.archive-close span:nth-child(2) { top: 30px; left:20px; transform: rotate(-315deg);}


/*==================================================================================================

       お問い合わせ

===================================================================================================*/

.form {
	width:100%;
    line-height: 200%;
    font-size:1.125rem;
    box-sizing:border-box;
    border-collapse: collapse;
    border-spacing: 0;
	}
    
    .form-input { width:100%;  }
    
        .form tr {
        border-bottom:1px solid rgb(0 0 0 / .2);
        }
        .form tr:last-child {
        border-bottom:none;
        }
        .form th {
        vertical-align: middle;
        text-align: left;
        padding:2rem 1em;
        font-weight:400;
        width:11em;
        }
        .form td {
        text-align: left;
        vertical-align: middle;
        padding:2rem 1em;
        }

        .form input {
            background:#F9F9F9;
            border:1px solid rgb(0 0 0 / .8);
            padding:1.5em 2.5%;
            box-sizing: border-box;
            border-radius: 3px;
            font-size:1.125rem;
            }
            .form .form-input input {
            width:100%;
            }

        .form input.wpcf7-file {
            background:none;
            border:none;
            padding:0;
            }
        .form .wpcf7-list-item {
            padding-right:2em;
            }

        .form textarea {
            background:#F9F9F9;
            border:1px solid rgb(0 0 0 / .8);
            padding:1.5em 2.5%;
            border-radius: 3px;
            box-sizing:border-box;
            font-size:1.125rem;
            }
            .form .form-input textarea {
            width:100%;
            }

    
    
        .form input[type="checkbox"] {
            border-radius: 0;
            padding:0;
            -webkit-appearance: none;
               -moz-appearance: none;
                    appearance: none;
            }
            .form input[type="checkbox"] {
            position: relative;
            width: 1.125em;
            height: 1.125em;
            border: 1px solid #000;
            border-radius: 2px;
            vertical-align: -5px;
            margin-right:5px;
            }
            .form input[type="checkbox"]:checked:before {
            position: absolute;
            top: 2px;
            left: 6px;
            transform: rotate(50deg);
            width: 5px;
            height: 10px;
            border-right: 2px solid #000;
            border-bottom: 2px solid #000;
            content: '';
            }
    
        .form_btn {
            text-align:center;
            margin:4rem auto 0;
            width:100%;
            }
            html>/**/body #submit_button {
            cursor: pointer;
            display: block;
            color:#FFF;
            width: 100%;
            height: 80px;
            font-size:16px;
            border: none;
            border-radius: 4px;
            background-color:  #4292AF;
            -webkit-transition  : all .3s ease;
                -moz-transition : all .3s ease;
                -ms-transition  : all .3s ease;
                    transition  : all .3s ease;
            }
            html>/**/body #submit_button:hover {
            background-color: #666;
            }


    @media only screen and (max-width: 1024px) {
    .form { font-size:1rem;}
    .form input { padding:1em 2.5%; font-size:1rem;}
    .form textarea { padding:1em 2.5%; font-size:1rem; }
    .form input[type="checkbox"] { width: 16px; height:16px; }
    .form input[type="checkbox"]:checked:before { top:1px ;left: 4px; width: 4px; height: 8px; }
    .form_btn { margin:3rem auto 0; }
    html>/**/body #submit_button { height: 70px; }
	}

    @media only screen and (max-width: 767px) {
    .form    { border-top:none; }
    .form tr { border-bottom:none; }
    .form th { width:100% !important; display: block !important; padding:0 ; box-sizing: border-box; border-right:none; font-weight:500; font-size:1.075rem; }
    .form td { width:100% !important; display: block !important; padding:.75rem 0 4.5em; box-sizing: border-box;}
    .form input { width:100%; background: #FFF; }
    .form input.wpcf7-file { background:none; }
    .form textarea { width:100%; background: #FFF; }
    .radio-input input { width:auto; margin:inherit; }
    .form input[type="checkbox"] { width: 14px; height:14px; vertical-align: -2px; }
    .form input[type="checkbox"]:checked:before { top:1px ;left: 4px; width: 4px; height: 8px; }
	}







.grecaptcha-badge { display: none !important; }




