@media only screen and (max-width:599px) {
    body {
        min-width: auto;
        font-size: 14px;
    }

    main {
        margin-top: 53px;
    }

    h1 {
        font-size: 2.2em;
        width: 80%;
    }

    h2 {
        font-size: 1.6em;
        margin-bottom: 15px;
    }

    h2 img {
        display: none;
    }

    .container {
        width: 90%;
    }

    .pc-only {
        display: none;
    }

    .sp-only {
        display: block;
    }

    header {
        position: fixed;
        border-width: 3px;
        padding: 4px 10px;
        border: none;
        min-width: auto;
    }

    header .head-wrap .logo img{
        height: 26px;
    }

    .navi-btn-wrap {
        display: block;
        margin-left: auto;
    }

    .navi-btn {
        width: 34px;
        position: relative;
        cursor: pointer;
        display: inline-block;
        z-index: 1;
        height: 30px;
    }

    .navi-btn span {
        position: absolute;
        display: block;
        width: 34px;
        height: 2px;
        background: #fff;
        border-radius: 5px;
        transition: all .3s;
    }

    .navi-btn span:nth-of-type(2) {
        top: 9px;
        opacity: 1;
        transition: all .3s;
    }

    .navi-btn span:last-of-type {
        top: 18px;
    }

    .navi-btn p {
        color: #fff;
        text-align: center;
        position: absolute;
        top: 24px;
        left: 0px;
        font-size: 10px;
        letter-spacing: 1px;
    }

    .navi-btn-on span:first-of-type {
        transform: rotate(-45deg) translateY(7px) translateX(-4px);
    }

    .navi-btn-on span:nth-of-type(2) {
        transform: translateX(0);
        opacity: 0;
    }

    .navi-btn-on span:last-of-type {
        transform: rotate(45deg) translateY(-9px) translateX(-6px);
    }

    header nav {
        display: none;
        position: fixed;
        top: 52px;
        width: 100%;
        left: 0;
        background-color: #897e6d;
        padding-bottom: 15px;
        padding-top: 5px;
    }

    header nav ul {
        display: block;
        width: 90%;
        margin: auto;
    }

    header nav ul li {
        margin-left: 0;
        text-align: center;
        margin-bottom: 12px;
    }

    header nav ul li:last-child{
        margin-bottom: 0px;
    }

    header nav ul li a {
        display: block;
        padding: 12px; 
        text-align: left;
        color: #3b3b3b;
        background-color: #fff;
    }

    header nav ul li a span {
        display: inline-block;
        margin-left: 10px;
        font-size: 0.8em;
        font-weight: normal;
        border-top: none;
    }

    .head-wrap .logo img {
        height: 44px;
    }

    .main-wrap {
        height: 250px;
    }

    #top-news {
        padding: 30px 0;
    }

    #top-news .news-list {
        margin-top: 0;
    }

    #top-news .news-list article {
        margin-bottom: 15px;
    }

    #top-news .news-list article:last-child {
        margin-bottom: 0;
    }

    #top-news .news-list h3 {
        display: block;
        position: relative;
        padding: 5px 10px;
        padding-right: 40px;
        font-weight: normal;
    }

    #top-news .news-list h3 .date {
        display: block;
        border: none;
        margin-right: 0;
        padding-right: 0;
        margin-bottom: 0;
    }

    #top-news .news-list h3 .arrow {
        position: absolute;
        top: 50%;
        right: 12px;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
    }

    #top-news .news-list .news-cts {
        padding: 10px;
    }

    #top-news .news-list .news-cts .date {
        margin-bottom: 0;
    }

    #top-news .news-list .news-cts .close-wrap {
        margin-top: 10px;
    }

    .pagination {
        margin-top: 25px;
    }

    .pagination .page-numbers {
        min-width: 34px;
        height: 32px;
        border-width: 1px;
    }

    .pagination .page-numbers.next {
        min-width: 15px;
    }

    #top-business{
        padding: 30px 0;
    }

    #top-business .lead {
        line-height: 1.8;
        font-size: 1em;
        margin-top: 0;
        font-weight: normal;
    }

    #top-business .business-cts {
        margin-top: 20px;
    }

    #top-business .business-cts h3 {
        font-size: 1.3em;
        margin-bottom: 5px;
    }

    #top-business .business-cts div {
        margin-left: 0;
        font-size: 1em;
        line-height: 1.8;
    }

    #useful-house {
        padding: 30px 0;
    }

    #useful-house .detail-area{
        font-size: 1em;
    }

    #top-company{
        padding-top: 30px;
    }

    #top-company .img-area .container main{
        padding: 20px 0;
    }

    #top-company .company-name {
        display: none;
    }

    #top-company .detail-area {
        padding-top: 10px;
        padding-bottom: 25px;
    }

    #top-company .detail-area .company-detail{
        width: 100%;
    }

    #top-company .detail-area table {
        font-size: 1em;
    }

    #top-company .detail-area h3 {
        font-size: 1.2em;
        margin-bottom: 10px;
        text-align: left;
    }

    #top-company .detail-area h3 img {
        margin-left: 5px;
        height: 24px;
    }

    #top-company .detail-area table th {
        white-space: nowrap;
        padding-right: 15px;
        padding-bottom: 5px;
    }

    #top-company .detail-area table td {
        padding-bottom: 5px;
    }

    #top-map {
        padding-bottom: 30px;
        padding-top: 0;
    }

    #top-map .map-wrap {
        margin-top: 20px;
        padding-bottom: 0;
        display: block;
    }

    #top-map .map-wrap>div {
        width: 100%;
    }

    #top-map iframe {
        height: 250px;
    }

    footer{
        padding: 10px 0;
    }

    footer .privacy {
        margin-bottom: 10px;
    }

    .sub-page .sub-inner {
        padding: 20px 0;
    }

    #contact .lead {
        line-height: 1.8;
        text-align: left;
        margin-top: 0;
    }

    #contact .form-area {
        margin-top: 20px;
    }

    #contact .form-area table th {
        display: block;
        width: 100%;
        padding: 10px;
        border: none;
    }

    #contact .form-area table td {
        display: block;
        padding: 10px;
    }

    #contact .form-area .btn-wrap {
        margin-top: 20px;
    }

    #contact .form-area .btn-wrap input {
        width: 100%;
    }

    #contact .recaptcha-msg {
        margin-top: 0;
        text-align: left;
        padding-top: 20px;
    }

    #contact div.wpcf7-validation-errors,
    #contact .wpcf7 form .wpcf7-response-output,
    #contact div.wpcf7-mail-sent-ok {
        margin: 0;
        text-align: left;
        padding: 0;
        margin-bottom: 10px;
        margin-top: 10px;
    }

    #page-top{
        bottom: 4%;
    }

    #page-top img {
        height: 15px;
    }

    /* 個人情報保護方針 */

    .privacy-list {
        margin-top: 20px;
    }

    .privacy-list h3 {
        margin-bottom: 5px;
    }

    .privacy-list>div {
        margin-bottom: 20px;
    }

    .privacy-list ol>li {
        margin-bottom: 10px;
    }
}