@charset "UTF-8";

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

       main footer

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

.wrapper:after {
        content:"";
        display: block;
        position: absolute;
        top:-4%;
        left:0;
        width:100%;
        height:0;
        padding-bottom:66.666666%;
        background: url("../images/parts/bg-wave.svg") center center / cover;
        z-index: -2;
        }

        main {
        width: calc(100% - 300px);
        margin-left:300px;
        }

        @media screen and (max-width:1599px) {
        main { width: calc(100% - 270px); margin-left:270px; }
        }
        @media screen and (max-width:1350px) {
        main { width: calc(100% - 250px); margin-left:250px; }
        }
        @media screen and (max-width:1279px) {
        main { width: calc(100% - 230px); margin-left:230px; }
        }
        @media screen and (max-width:1024px) {
        .wrapper:after { top:-4.5%; }
        main { width:100%; margin-left:0; }
        }

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

       hero

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

.hero-wrap {
        position: relative;
        box-sizing: border-box;
        z-index: 0;
        }
        
        @media screen and (max-width:1024px) {
        .hero-wrap { margin-top:150px; padding-left:3%; }
        }
        @media screen and (max-width:767px) {
        .hero-wrap { margin-top:120px; }
        }

.page-header-wrap {
        position: relative;
        box-sizing: border-box;
        height: auto;
        border-radius:0 0 0 30px;
        overflow: hidden;
        z-index: 0;
        }
        .page-header {
        position: relative;
        width: 100%;
        height:100%;
        max-height:100vh;
        z-index: 0;
        }
        .page-header:before {
        content: "";
        display: block;
        height:calc(1vw * 56.25);
        width:100%;
        }
        .page-header.short:before {
        content: "";
        display: block;
        height:0;
        padding-bottom:45%;
        width:100%;
        }

        .toppage      { background: url("../images/img/top/header.jpg") center center / cover; }
        .products     { background: url("../images/img/products/header.jpg") center center / cover; }
        .news         { background: url("../images/img/news/header.jpg") center center / cover; }
        .koyomi       { background: url("../images/img/koyomi/header.jpg") center center / cover; }
        .genmailife   { background: url("../images/img/life/header.jpg") center center / cover; }
        .mother       { background: url("../images/img/mother/header.jpg") center center / cover; }
        .megamis      { background: url("../images/img/megamis/header.jpg") center center / cover; }
        .contact      { background: url("../images/img/contact/header.jpg") center center / cover; }
        .recruit      { background: url("../images/img/recruit/header.jpg") center center / cover; }
        .business     { background: url("../images/img/business/header.jpg") center center / cover; }
        .information  { background: url("../images/img/information/header.jpg") center center / cover; }
        .pyrrole      { background: url("../images/img/pyrrole/header.jpg") center center / cover; }
        .trivia       { background: url("../images/img/trivia/header.jpg") center center / cover; }
        .media        { background: url("../images/img/media/header.jpg") center center / cover; }

        @media screen and (max-width:1024px) {
        .page-header:before { padding-bottom:80%; height:0; }
        }
        @media screen and (max-width:767px) {
        .page-header:before { padding-bottom:120%; height:0; }
        }

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

       背景

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

.border-box {
        border:3px solid #816C3F;
        padding:2.5rem 3rem;
        border-radius: 10px;
        box-sizing: border-box;
        overflow: hidden;
        }
        .border-box-m {
        border:1px solid rgb(0 0 0 / .3);
        padding:4rem;
        border-radius: 5px;
        box-sizing: border-box;
        overflow: hidden;
        }
        .border-box-s {
        border:1px solid #357EA8;
        background: rgb(255 255 255 / .95);
        padding:3rem 3.5rem;
        border-radius: 20px;
        box-sizing: border-box;
        }

.bg-white { background: #FFF; }

.after-wave {
        position: relative;
        z-index: 0;
        }
        .after-wave:after {
        content:"";
        display: block;
        position: absolute;
        top:3rem;
        left:-300px;
        width:120%;
        height:0;
        padding-bottom:80%;
        background: url("../images/parts/bg-wave.svg") center center / cover;
        z-index: -1;
        }

.beige-box {
        background: #F1ECE2;
        padding:2.5rem;
        box-sizing: border-box;
        border-radius: 6px;
        }

.bg-beige {
        position: relative;
        z-index: 0;
        }
        .bg-beige:after {
        content:"";
        display: block;
        position: absolute;
        top:0;
        left:-300px;
        width:120%;
        height:100%;
        background: #E9E1D5;
        z-index: -1;
        }


        @media screen and (max-width:2000px) {
        .after-wave:after { width:130%; padding-bottom:87%; }
        }
        @media screen and (max-width:1350px) {
        .after-wave:after { left:-260px; width:140%; padding-bottom:95%; }
        }
        @media screen and (max-width:1024px) {
        .border-box { padding:2.5rem; border-radius: 15px; }
        .border-box-m { padding:2.5rem 3rem; }
        .border-box-s { padding:2.5rem; border-radius: 15px; }
        .after-wave:after { left:0; width:100%; padding-bottom:66.66666%; }
        
        }
        @media screen and (max-width:767px) {
        .border-box  { padding:1.75rem; border-radius: 10px; }
        .border-box-m { padding:1.75rem 1.75rem; }
        .border-box-s { padding:2rem; border-radius: 10px; }
        .after-wave:after { left:-50%; width:200%; padding-bottom:133.33333%; }
        .beige-box { padding:2rem; }
        }

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

        タイトル / テキスト

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

.white { color:#FFF !important; }
.white .en { color:#FFF; }
.red { color:#A63517;}
.blue { color:#06316E;}
.gray { color:#A99D81;}

.mark {background:linear-gradient(transparent 60%, #FCE989 60%);}

.under-title {
        padding-bottom:.5rem;
        border-bottom:2px solid #816C3F;
        }
        .bg-black .under-title {
        padding-bottom:.5rem;
        border-bottom:1px solid rgb(255 255 255 / .6);
        }
.box-title {
        border:1px solid rgba(0,0,0,.4);
        border-bottom:3px solid rgba(0,0,0,.65);
        padding:.7rem 1.2rem;
        box-sizing: border-box;
        }
.bar-title {
        position: relative;
        padding-top:.75rem;
        box-sizing: border-box;
        }
        .bar-title:after {
        content:"";
        display: block;
        position: absolute;
        top:0;
        left: 0;
        width:40px;
        height:2px;
        background:#06316E;
        border-radius: 1px;
        }
        .bar-title.center:after { left:50%; translate:-50%; }

.dotted-title {
        padding-bottom:.25rem;
        border-bottom:3px dotted #357EA8;
        display:block;
        }
.label-title {
        line-height: 120%;
        padding:.75em 1.5em;
        box-sizing: border-box;
        border-radius: 12px;
        background: #DDD0B9;
        }
.lead {
        position: relative;
        width:100%;
        overflow: hidden;
        z-index: 0;
        }
        .lead:after {
        content:"";
        position: absolute;
        display: inline-block;
        top:50%;
        transform: translateY(-50%);
        width:100%;
        height:1px;
        background:rgb(0 0 0 / .3);
        opacity:.5;
        margin-left:1.5rem;
        z-index: -1;
        }

.ine-title {
        position: relative;
        padding-top:60px;
        z-index: 0;
        }
        .ine-title:before {
        content:"";
        display: block;
        position: absolute;
        top:0;
        left:-30px;
        width: 60px;
        height:60px;
        background: url("../images/parts/title-head.svg") center center / cover;
        z-index: -1;
        }

        @media screen and (max-width:1024px) {
        .ine-title { padding-top:50px; }
        .ine-title:before { left:-25px; width: 50px; height:50px; }
        }
        @media screen and (max-width:767px) {
        .ine-title { padding-top:40px; }
        .ine-title:before { left:-20px; width: 40px; height:40px; }
        }

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

       トップページ

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

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

        .greeting-title {
        position: absolute;
        bottom:30px;
        left:45px;
        width:180px;
        z-index: 1;
        }
        .greeting-title p {
        font-size:30px;
        height:365px;
        line-height: 200%;
        letter-spacing: .2em;
        color:#FFF;
        }
        @media screen and (max-width:1600px) {
        .greeting-title { width:165px; }
        .greeting-title p { font-size:27px; height:330px; }
        }
        @media screen and (max-width:1350px) {
        .greeting-title { width:145px; bottom:25px; left:36px; }
        .greeting-title p { font-size:24px; height:295px; }
        }
        @media screen and (max-width:1024px) {
        .greeting-title { width:130px; bottom:2vw; left:7vw; }
        .greeting-title p { font-size:21px; height:255px; }
        }
        @media screen and (max-width:767px) {
        .greeting-title { width:110px; bottom:2.5vw; left:6vw; }
        .greeting-title p { font-size:18px; height:220px; text-shadow: 0 5px 10px rgb(0 0 0 / .1); }
        }

        /*=================================================
                NEWS   item box
        ==================================================*/

        .news-slider {
        width:calc(100% + 30px);
        margin-left:-15px;
        }

        .news-item-box {
        box-sizing: border-box;
        height:100%;
        width:100%;
        padding:0 15px;
        }
        .news-item-box.item-list { padding:0; }
        .news-item-box a {
        display:block;
        -webkit-transition: all .3s ease;
        transition: all .3s ease;
        }
        .news-item-box .item-content {
        padding:.75rem 4% 0;
        box-sizing: border-box;
        }
        .news-item-box .item-title {
        position: relative;
        font-size:1rem;
        padding-bottom:.5rem;
        line-height:150%;
        font-weight:500;
        transition:.3s;
        }
        .news-item-box a .item-title:after {
        position:absolute;
        bottom:0;
        left:0;
        content:'';
        width:100%;
        height:1px;
        background:#816C3F;
        transition:.3s;
        }
        .news-item-box a:hover .item-title:after {
        background: #B3A078;
        }
        .news-item-box .item-date {
        font-size:.75rem;
        line-height: 100%;
        padding-top:.5rem;
        text-align: right;
        z-index: 1;
        }
        a .item-date { color:#9A804F; }
        .news-item-box a:hover .item-title { color:#B3A078 ;}
        @media screen and (max-width:767px) {
        .news-slider { width:100%; margin-left:0; }
        .news-item-box { padding:0 12px; }
        }

        /*=================================================
                att
        ==================================================*/

        .hohoemi-img {
        width:100%;
        height:0;
        padding-bottom:100%;
        background: url("../images/img/top/img_01.jpg") center center / cover;
        }
        .ricebran-img {
        width:100%;
        height:0;
        padding-bottom:100%;
        background: url("../images/img/top/img_02.jpg") center bottom / cover;
        }
        .oroshi-img {
        width:100%;
        height:0;
        padding-bottom:100%;
        background: url("../images/img/top/img_03.jpg") center top / cover;
        }
        .noda-img {
        width:100%;
        height:0;
        padding-bottom:100%;
        background: url("../images/img/top/img_04.jpg") center top / cover;
        }
        @media screen and (max-width:1450px) {
        .hohoemi-img { height:100%; padding-bottom:0; }
        .ricebran-img { height:100%; padding-bottom:0; }
        .oroshi-img { height:100%; padding-bottom:0; }
        .noda-img { height:100%; padding-bottom:0; }
        }
        @media screen and (max-width:767px) {
        .hohoemi-img { height:0; padding-bottom:75%; }
        .ricebran-img { height:0; padding-bottom:75%; }
        .oroshi-img { height:0; padding-bottom:75%; }
        .noda-img { height:0; padding-bottom:75%; }
        }


        /*=================================================
                MAP
        ==================================================*/

        .map-wrap {
        position: relative;
        left:50%;
        margin-left:-600px;
        width:calc(1200px + ((100% - 1200px) / 2));
        }
        @media screen and (max-width:1660px) {
        .map-wrap { left:4vw; margin-left:0; width:calc(100% - 4vw); }
        }
        @media screen and (max-width:1024px) {
        .map-wrap { left:5.5vw; width:calc(100% - 5.5vw); }
        }
        @media screen and (max-width:767px) {
        .map-wrap { left:7.5vw; width:calc(100% - 7.5vw); }
        }

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

       下層 ヘッダー

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

.page-title {
        position: absolute;
        bottom:0;
        left:0;
        color:#FFF;
        width:100%;
        box-sizing: border-box;
        z-index:2;
        }
        .page-title:after {
        content:"";
        display: block;
        position: absolute;
        bottom:0;
        left:0;
        width:100%;
        height:120px;
        border-radius:0 0 0 30px;
        background: rgb(0,0,0);
        background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);
        }
        .page-title h1 {
        position: relative;
        box-sizing: border-box;
        padding:0 0rem 2rem 3rem;
        line-height: 180%;
        z-index: 3;
        }
        @media screen and (max-width:1350px) {
        .page-title h1 { padding:0 0rem 1.5rem 2.5rem; }
        .page-title:after { height:100px; }
        }
        @media screen and (max-width:1024px) {
        .page-title { left:3%; }
        .page-title h1 { padding:0 0rem 1rem 2rem; }
        .page-title:after { height:80px; }
        }
        @media screen and (max-width:767px) {
        .page-title h1 { padding:0 0rem .75rem 2rem; }
        .page-title:after { height:70px; }
        }

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

       下層

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

        /*==========================================
            MOTHER
        ==========================================*/

        .foryou-img {
        width:100%;
        height:100%;
        background:url("../images/img/mother/img_01.jpg") center center / cover;
        }

        @media screen and (max-width:767px) {
        .foryou-img { height:0%; padding-bottom:66%; }
        }








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

       投稿　Post

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


        .post-title {
        background:#F2ECE3;
        border-bottom: 2px solid #816C3F;
        line-height: 150%;
        padding: .5em 1em;
        box-sizing: border-box;
        border-radius:5px;
        margin-bottom:1em;
        }
        .post-cat-wrap {
        padding:2rem 0;
        }
        .post-cat {
        border-top:1px solid #816C3F;
        border-bottom:1px solid #816C3F;
        padding:.75rem 0 .75rem;
        }
        .list-date { float: right; text-align: right; font-size:.75rem;}
        .post-date { float:right; font-size:.866666rem; color:#816C3F; padding-bottom:2rem; }

        
        .post-memo-wrap {
        background:#F3F4F6;
        padding:2rem;
        margin-bottom: 3rem;
        }
        .post-content {
            position: relative;
            padding-bottom: 3rem;
            }
            .post-content p { padding-bottom:1.5rem; }
            .post-content img { margin-bottom:1.5rem; text-align: center; border-radius:5px; }
            .post-content p img { margin-bottom:10px; text-align: center; border-radius:5px; }
            .post-content p span { display: block; }
            .post-content p span.center-img { text-align: center; }
            .post-content h2 { padding:3rem 0 .5rem; margin:0 auto 1.5rem; border-bottom:3px solid #444; font-size:1.25rem; line-height: 150%; font-weight:900; }
            .post-content h3 { padding:3rem 0 .5rem; margin:0 auto 1.5rem; border-bottom:2px dotted #444; font-size:1.125rem; line-height: 150%; font-weight:900; }
            .post-content h4 { padding:3rem 0 1.25rem; margin:0 auto; font-size:1.075rem; line-height: 150%; font-weight:900; }
            .post-content h5 { padding:3rem 0 1.25rem; margin:0 auto; font-size:1.075rem; line-height: 150%; font-weight:900; }
            .post-content a { font-weight:600; color:#527D69; 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: 240%; margin-bottom:3rem; border-radius: 6px; }
            .post-content blockquote p { padding-bottom:0; font-weight:400; }
            .post-content .post-image-box  { padding-bottom:3rem; }
            .post-content .post-image-box p { padding-bottom:0; }
            .post-content .post-image-box img { padding-bottom:0; }



        @media screen and (max-width:1024px) {
        .post-memo-wrap { padding:1.75rem; }
        .post-content-wrap .post-title { font-size:1.8rem; }
        .post-content h2 { font-size:1.65rem; }
        .post-content h3 { font-size:1.5rem; }
        .post-content h4 { font-size:1.35rem; }
        .post-content h5 { font-size:1.2rem; }
        .post-content blockquote { padding: 2rem; border: 3px solid #CCC; line-height: 220%; }
        .qa-table th { width:60px; font-size:33px; }
        .qa-table td { font-size:17px; }
        }
        @media screen and (max-width:767px) {
        .post-memo-wrap { padding:1.25rem 1.5rem; }
        .post-content-wrap .post-title { font-size:1.75rem; }
        .post-content h2 { font-size:1.5rem; }
        .post-content h3 { font-size:1.35rem; }
        .post-content h4 { font-size:1.2rem; }
        .post-content h5 { font-size:1.1rem; }
        .post-content blockquote { padding: 1.5rem; border: 2px solid #CCC; line-height: 200%; }
        .qa-table th { width:40px; font-size:21px; }
        .qa-table td { font-size:15px; }
        }


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

       一覧　ページャー

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

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

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

       投稿　ページャー

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

        .post-pager {
        padding:2em 0 1.5em;
        }
        .prev-pager,
        .next-pager,
        .all-pager {
        height:100%;
        line-height:135%;
        position: relative;
        }
        .prev-pager a {
        display: block;
        width:100%;
        height:100%;
        padding:1.75em 1.5em 1.75em 45px;
        box-sizing:border-box;
        color:#816C3F;
        text-align: left;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        }
        .prev-pager a:before {
        display: block;
        content: "";
        position: absolute;
        left:0;
        top:50%;
        margin-top:-1px;
        line-height:1;
        padding:0;
        background:#816C3F;
        width:30px;
        height:2px;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        }
        .prev-pager a:hover {
        padding-left:55px;
        }
        .prev-pager a:hover:before {
        width:40px;
        }
        .next-pager a {
        display: block;
        width:100%;
        height:100%;
        padding:1.75em 45px 1.75em 1.5em;
        box-sizing:border-box;
        color:#816C3F;
        text-align: right;
        -webkit-transition: all 0.3s ease;
         transition: all 0.3s ease;
        }
        .next-pager a:before {
        display: block;
        content: "";
        position: absolute;
        right:0;
        top:50%;
        margin-top:-1px;
        line-height:1;
        padding:0;
        background: #816C3F;
        width:30px;
        height:2px;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        }
        .next-pager a:hover {
        padding-right:55px;
        }
        .next-pager a:hover:before {
        width:40px;
        }
        @media screen and (max-width:767px) {
        .prev-pager a { padding:1.75em 1.5em 1.75em 30px; }
        .prev-pager a:before { width:20px; }
        .prev-pager a:hover { padding-left:40px; }
        .prev-pager a:hover:before { width:30px; }
        .next-pager a { padding:1.75em 30px 1.75em 1.5em; }
        .next-pager a:before { width:20px; }
        .next-pager a:hover { padding-right:40px; }
        .next-pager a:hover:before { width:30px; }
        }

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

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

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

.cat-overlay,.archive-overlay {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0, 0.9);
        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: 250px;
        height: 100%;
        padding-top: 60px;
        background:#FFF;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 10010;
        transform: translate(250px);
        transition: all .4s;
        overflow-y: scroll;
        }
        .cat-modal.open,.archive-modal.open {
        transform: translateZ(0);
        }
.cat-outer {
        padding:0 10px 120px;
        }
        .cat-outer.desktop {
        padding:0 0 3rem;
        }
        .cat-outer h2 {
        font-size:1.06666rem;
        padding-bottom:1rem;
        }
        .cat-outer > ul {
        border-top: 1px solid rgba(0,0,0,.2);
        }
        .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;
        text-align: left;
        line-height: 150%;
        box-sizing: border-box;
        border-bottom: 1px solid rgba(0,0,0,.2);
        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:#332F29;
        }
        .cat-outer li li li a:before {
        content:"- -";
        display: inline-block;
        margin-right:.5em;
        color:#332F29;
        }
        .cat-outer li a:hover {
        background:rgb(221 208 185 / .3);
        color:#332F29;
        }
        .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: #1F1F1F; 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);}

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

       お問い合わせ

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

        .kome {
        color:#ff0000;
        font-size:12px;
        font-weight: bold;
        }

.form-table {
        width:100%;
        line-height: 200%;
        box-sizing:border-box;
        border-collapse: collapse;
        border-spacing: 0;
        border-top:1px dotted rgba(23,34,45,.3);
        }
        .form-table tr {
        border-bottom:1px dotted rgba(23,34,45,.3);
        }
        .form-table th {
        vertical-align: top;
        text-align: left;
        padding:15px 1em;
        font-weight:400;
        width:10em;
        }
        .form-table td {
        text-align: left;
        vertical-align: top;
        padding:13px 1em;
        }
        .form-table input {
        width:100%;
        background:#F5F1EB;
        border:1px solid #D6CBB6;
        padding:0.85em 2.5%;
        box-sizing: border-box;
        border-radius:5px;
        }
        .form-table input.wpcf7-file {
        background:none;
        border:none;
        padding:0;
        }
        .form-table .wpcf7-list-item {
        padding-right:2em;
        }
        .form-table textarea {
        width:100%;
        background:#F5F1EB;
        border:1px solid #D6CBB6;
        padding:0.85em 2.5%;
        box-sizing:border-box;
        border-radius:5px;
        }
        .form_btn {
        text-align:center;
        margin:30px auto;
        width:270px;
        }
        html>/**/body #submit_button {
        cursor: pointer;
        display: block;
        color:#FFF;
        width: 270px;
        height: 60px;
        font-size:16px;
        border: none;
        border-radius: 6px;
        background-color: #B3A078;
        -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: 767px) {
    .form-table    { border-top:none; }
    .form-table tr { border-bottom:none; }
    .form-table th { width:100% !important; display: block !important; padding:.25em 0; box-sizing: border-box; border-right:none;}
    .form-table td { width:100% !important; display: block !important; padding:.25em 0 1.25em; box-sizing: border-box;}
    .form-table input { width:100%; }
    .form-table input.wpcf7-file { background:none; }
    .form-table textarea { width:100%; }
    .radio-input input { width:auto; margin:inherit; }
	}



















