@charset "UTF-8";

@media only screen and (max-width : 1550px) {
    .site-logo img {
        height: 54px;
    }
}

/*--------------------------------------------------------
解像度1450px以下
--------------------------------------------------------*/
@media only screen and (max-width : 1450px) {
    .global-nav-in li {
        margin-right: 10px;
        font-size: 16px;
    }

    .global-nav-in li.btn a {
        padding: 0.5em 1em 0.5em 1.5em;
        background: url(../imgs/chevron-right-navy.svg) 0.5em center no-repeat #ffffff;
        background-size: auto 12px;
    }

    .is-fixed .global-nav-in li.btn a {
        padding: 0.5em 1em 0.5em 1.5em;
        background: url(../imgs/chevron-right-navy.svg) 0.5em center no-repeat #ffffff;
        background-size: auto 12px;
    }

    .is-fixed .show-menu li.btn a {
        background: transparent !important;
        padding: 0 20px;
    }

    .global-nav-in li.btn a:hover,
    .global-nav-in li.btn a:active,
    .global-nav-in li.btn a:focus {
        background: url(../imgs/chevron-right-wht.svg) 0.5em center no-repeat #10318A;
        background-size: auto 12px;
    }

    .global-nav-in li {
        display: inline-block;
        margin: 0;
        margin-right: 10px;
        list-style: none;
        font-size: 12px;
    }

    .global-nav-in li.btn a {
        padding: 0.5em 1em 0.5em 1.5em;
        background: url(../imgs/chevron-right-navy.svg) 0.5em center no-repeat #ffffff;
        background-size: auto 12px;
    }

    .global-nav-in li.btn a:hover,
    .global-nav-in li.btn a:active,
    .global-nav-in li.btn a:focus {
        background: url(../imgs/chevron-right-wht.svg) 0.5em center no-repeat #10318A;
        background-size: auto 12px;
    }

    #menu li a {
        padding: 0px 8px;
        font-size: 14px;
    }

    #menu li a.arrow_down {
        padding-right: 18px;
    }

    #menu>li {
        margin-top: 31px;
    }

    #menu li.for_download,
    #menu li.for_contact {
        margin-top: 21px;
    }

    #menu>li>ul li {
        font-size: 13px;
    }

    #menu>li>ul li a {
        padding: 8px 55px 8px 8px;
    }

    #menu li.for_download {
        margin-left: 8px;
        margin-right: 8px;
    }

    #menu>li>ul li a:after {
        right: 10px;
    }

    h1.site-logo {
        margin-left: 30px;
    }

    .site-logo img {
        height: 44px;
    }
    .home .hero .site-header-conts .site-title .catch_copy{
        font-size: 45px;
    }
    .hero .site-header-conts .site-title {
        padding: 0% 70px 0px 70px;
    }
    .single .hero-archive .site-header-conts .site-title, .archive .hero-archive .site-header-conts .site-title{
        padding-left: 30px;
        padding-right: 30px;
    }

    #menu li.btn a {
        padding: 14px 24px 14px 18px;
        font-size: 16px;
        display: block;
    }

    #menu li.btn a::after {
        right: 10px;
    }

}

/*解像度1450px以下*/

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

    h1.site-logo {
        margin-left: 20px;
    }

    .site-logo img {
        height: 38px;
        width: auto;
        margin-top: 0;
        margin-left: 0;
        margin-bottom: 0;
    }

    #menu {
        display: none;
    }

    #menu li {
        height: auto;
        width: 100%;
        padding: 0;
        white-space: nowrap;
    }

    #menu li:hover a {
        background: transparent;
    }
    .is-fixed #menu>li,
    #menu>li {
        margin: 0;
    }

    /* V を表示 */
    #menu>li .pd {
        display: none;
        width: 100%;
    }

    #menu li a {
        position: relative;
        display: block;
        color: #ffffff;
        background: none;
        padding: 14px 20px;
        font-size: 16px;
        opacity: 1;
    }

    #menu li a:hover {
        position: relative;
        display: block;
        color: #ffffff;
        background: none;
        padding: 14px 20px;
        opacity: 0.8;
    }

    #menu li a::after {
        position: absolute;
        content: '';
        width: 6px;
        height: 6px;
        border: 0;
        position: absolute;
        top: 50%;
        right: 20px;
        margin-top: -4px;
        transform: rotate(45deg);
        border-top: solid 2px #ffffff;
        border-right: solid 2px #ffffff;
    }


    #menu li i {
        padding: 0px 6px;
    }

    #menu li a.arrow_down span:after {
        display: none;
    }

    /* メニューを移動させないため */
    #menu-navibtn:checked~#navi {
        position: fixed;
        overflow-y: scroll;
        overflow-x: hidden;
        height: 100%;
    }

    /* ハンバーガーメニューがクリックされた時 */
    #menu-navibtn:checked~* #menu {
        display: block;
        margin: 0;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    #menu-navibtn:checked~* #menu>li {
        max-height: inherit;
        overflow-y: visible;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    #menu>li ul {
        display: none;
    }

    #menu>li>label:hover {
        display: none;
    }

    #menu>li:hover>ul>li,
    #menu li ul li:hover>ul>li {
        display: none;
    }

    #menu li ul {
        display: none;
    }

    #menu>li>ul {
        display: none;
    }

    .angletoggle:before {
        content: "\f107";
    }

    #navi input[type="checkbox"]:checked~label .pd .angletoggle:before {
        content: "\f106";
    }

    #navi #menu {
        width: 250px;
        float: right;
        position: absolute;
        top: 50px;
        right: 10px;
        padding-top: 10px;
        padding-bottom: 0px;
        background: #1f1f1f;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    #navi #navibtn {
        display: block;
        position: absolute;
        top: 10px;
        right: 10px;
    }

    #navibtn span {
        display: block;
        width: 40px;
        height: 40px;
        background-color: transparent;
    }

    #navibtn span span {
        display: block;
        overflow: hidden;
        width: 1px;
        height: 1px;
    }

    #navibtn span span::before,
    #navibtn span span::after,
    #navibtn span::after {
        position: absolute;
        left: 10px;
        content: "";
        width: 22px;
        height: 2px;
        background-color: #000;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    /* 上の棒 */
    #navibtn span span::before {
        top: 10px;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    #menu-navibtn:checked~#navi label#navibtn span span::before {
        top: 19px;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    /* 下の棒 */
    #navibtn span::after {
        bottom: 11px;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    #menu-navibtn:checked~#navi label#navibtn>span::after {
        bottom: 19px;
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    /* 中の棒 */
    #navibtn span span::after {
        top: 18px;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    #menu-navibtn:checked~#navi label#navibtn span span::after {
        display: none;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }

    /* スマホの際に V を表示 */
    .menu-parent .pd {
        display: inline-block;
        width: 100%;
    }

    .menu {
        display: none;
    }

    .menu-parent {
        height: auto;
        width: 100%;
        padding: 0px 20px;
        border-bottom: 1px solid #DDD;
    }

    .menu-parent:first-child {
        border-top: 1px solid #DDD;
    }

    .menu-parent i {
        padding: 0px 6px;
    }

    /* メニューを移動させないため */
    #menu-navibtn:checked~#navi {
        position: fixed;
        overflow-y: scroll;
        overflow-x: hidden;
        height: 100%;
        width: 100%;
    }

    /* ハンバーガーメニューがクリックされた時 */
    #menu-navibtn:checked~* .menu {
        display: block;
        opacity: 1;
    }

    #menu-navibtn:checked~* .menu-parent {
        max-height: inherit;
        overflow-y: visible;
    }

    #menu-navibtn:checked~* .menu-child {
        max-height: 0;
        overflow-y: hidden;
        visibility: hidden;
    }

    /* 子メニュー */
    .menu-parent .menu-child {
        background: #1f1f1f;
        border-top: 1px solid #DDD;
        border-left: 1px solid #FFF;
        border-right: 1px solid #FFF;
        border-bottom: 1px solid #FFF;
        position: relative;
        padding: 0 20px;
        opacity: 1;
        top: 0;
        margin-left: auto;
        left: auto;
        width: auto;
    }

    .menu-parent>label:hover {
        cursor: pointer;
        cursor: hand;
    }

    /* 子メニューがクリックされた時 */
    #navi input[type="checkbox"]:checked~.menu-child {
        max-height: inherit;
        overflow-y: visible;
        visibility: visible;
    }

    .angletoggle:before {
        content: "\f107";
    }

    #navi input[type="checkbox"]:checked~* .angletoggle:before {
        content: "\f106";
    }

    #menu li.btn a:hover,
    #menu li.btn a {
        width: auto;
        padding: 14px 24px 14px 18px;
        font-size: 16px;
    }
    #menu li.btn a::after {
    	right: 15px;
	}
    .is-fixed #menu li.for_download,
    #menu li.for_download {
        margin: 0;
        padding: 20px 20px 0 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .is-fixed #menu li.for_contact,
    #menu li.for_contact {
        margin: 0;
        padding: 16px 20px 30px 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    #menu li.btn.border-btn.blue-btn a {
        border: 2px solid #ffffff;
        background-color: transparent;
        color: #ffffff;
        opacity: 1;
    }
    #menu li.btn a:before{
        background: transparent;
    }

    #menu li.btn.border-btn.blue-btn a:hover {
        border: 2px solid #ffffff;
        background-color: transparent;
        color: #ffffff;
        opacity: 0.7;
    }

    #menu li.btn.border-btn.blue-btn a::after {
        border-top: solid 2px #ffffff;
        border-right: solid 2px #ffffff;
    }
    #menu li.btn.border-btn.blue-btn a:hover::after {
        border-top: solid 2px #ffffff;
        border-right: solid 2px #ffffff;
    }

    #menu li.btn.beta-btn.blue-btn a {
        border: 2px solid #ffffff;
        background-color: #ffffff;
        color: #ffffff;
        opacity: 1;
    }

    #menu li.btn.beta-btn.blue-btn a:hover {
        border: 2px solid #ffffff;
        background-color: #ffffff;
        color: #ffffff;
        opacity: 0.7;
    }

    #menu li.btn.beta-btn.blue-btn a::after {
        border-top: solid 2px #ffffff;
        border-right: solid 2px #ffffff;
    }

    #menu li.btn.beta-btn.blue-btn a:hover::after {
        border-top: solid 2px #ffffff;
        border-right: solid 2px #ffffff;
    }
}

/*解像度1300px以下*/


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

    .site-header-in,
    .global-nav-in,
    .main-body-in,
    .col1 .main-body-in,
    .site-footer-in {
        margin: auto;
        box-sizing: border-box;
        -weblit-box-sizing: border-box;
        padding-left: 0px;
        padding-right: 0px;
    }

    .main-image-in {
        width: 100%;
    }

    .col1 .section-wrap,
    .col1 .breadcrumbs,
    .col1 .pankuzu,
    .col1 .section-wrap.wide {
        width: 100%;
        padding-left: 30px;
        padding-right: 30px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .col1 .section-wrap.wide .section-in {
        width: 100%;
        padding: 90px 0;
    }


    #slide .section-in {
        width: auto !important;
    }

    #slide p.slide-img img {
        box-sizing: border-box;
    }
    .slide-img img{
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .thumb-box {
        float: none;
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
    }

    #corp .thumb-box {
        float: none;
        max-width: 100%;
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
        text-align: center;
        overflow: hidden;
        width: 100%;
        padding: 0;
    }

    #corp table {
        max-width: 100%;
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
    }

    #corp .thumb-box p {
        float: left;
        width: 49%;
        text-align: center;
        display: block;
        padding: 0px 20px 0px 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
    .home .hero .site-header-conts .top-view-news section{
        width: auto;
    }

}

/*解像度1200px以下*/

/*--------------------------------------------------------
解像度950px以下
--------------------------------------------------------*/
@media only screen and (max-width : 980px) {
    .pankuzu {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .news-dsc {
        display: none;
    }

    .hero-service .site-header-in {
        height: 150px;
    }

    #slide h2 {
        margin: 1em 0 1em;
        font-size: 25px;
        line-height: 1.4;
    }

    #slide h3 {
        margin: 2em 0 1em;
        font-size: 22px;
        line-height: 1.4;
    }

    #slide h4 {
        margin: 2em 0 1em;
        font-size: 20px;
        line-height: 1.4;
    }

    #slide h5 {
        margin: 2em 0 1em;
        font-size: 18px;
        line-height: 1.4;
    }

    blockquote {
        margin: 1.5em 0em 1.5em 0em;
        padding: 25px 45px 25px 45px;
    }

    blockquote::before,
    blockquote::after {
        position: absolute;
        font-size: 20px;
    }

    blockquote::before {
        top: 10px;
        left: 15px;
    }

    blockquote::after {
        right: 15px;
        bottom: 10px;
    }

    /*--------------------------------------------------------
	グローバルナビ
	--------------------------------------------------------*/
    .is-fixed {
        background: transparent;
    }

    .is-fixed .site-logo {
        display: none;
    }

    .is-fixed .global-nav-panel {
        background: #10318A;
        top: 0;
        right: 0;
    }


    .global-nav {
        position: relative;
        z-index: 20;
        margin: 0;
        border: 0;
    }

    .global-nav ul {
        display: none;
        position: absolute;
        background: #000;
        top: 59px;
        right: 0px;
        width: 60%;
        padding: 0;
        border: 0;
    }

    .is-fixed ul {
        top: 49px !important;
    }

    .global-nav-panel {
        position: absolute;
        top: 6px;
        right: 5px;
        display: block;
        width: 50px;
        height: 50px;
        cursor: pointer;
    }

    .global-nav-in li.btn,
    .global-nav-in li {
        display: list-item;
        width: auto;
        margin-right: 0;
        line-height: 56px;
        border-bottom: 1px solid #a1a1a6;
    }

    .global-nav-in li:last-child {
        border: none;
    }

    .global-nav-in li.btn a,
    .global-nav-in li a {
        color: #ffffff;
        border: none;
        background: none;
        text-align: left;
        width: auto;
        display: block;
        padding: 0 20px;
        text-decoration: none;
        font-size: 16px;
        opacity: 1;
        font-weight: normal;
        line-height: 56px;
    }

    .global-nav-in li.btn a:hover,
    .global-nav-in li a:hover {
        opacity: 0.8;
        border: none;
        color: #ffffff;
        background: none;
    }

    .global-nav-in li ul {
        position: static;
        margin-left: 2em;
        width: auto;
    }

    .global-nav-in li ul li {
        width: auto;
    }

    .site-logo {
        padding: 0px;
    }

    .site-logo img {}

    .global-nav-in li a::after {
        display: none;
    }

    .global-nav-in li.btn a::after {
        display: none;
    }

    .global-nav-in li a:hover::after {
        display: none;
    }

    .home #contact h2,
    .home #download h2 {
        font-size: 23px;
    }

    .home #contact p,
    .home #download p {
        line-height: 1.5;
        font-size: 16px;
    }

    .btn.wht-beta-btn a {
        padding: 0.8em 2em 0.8em 2.8em;
        background: url(../imgs/chevron-right-navy.svg) 0.8em center no-repeat #FFFFFF;
        background-size: auto 20px;
        border-radius: 100px;
        min-width: 100%;
        -webkit-box-sizing: border-box;
        font-feature-settings: "palt";
        letter-spacing: 0em;
        font-size: 16px;
    }

    .btn.wht-beta-blue-btn a {
        padding: 0.8em 2em 0.8em 2.8em;
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat #10318A;
        background-size: auto 20px;
        border-radius: 100px;
        min-width: 100%;
        -webkit-box-sizing: border-box;
        font-feature-settings: "palt";
        letter-spacing: 0em;
        font-size: 16px;
        color: #ffffff;
    }

    .btn.wht-beta-orange-btn a {
        padding: 0.8em 2em 0.8em 2.8em;
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat #FAA916;
        background-size: auto 20px;
        border-radius: 11px;
        min-width: 100%;
        -webkit-box-sizing: border-box;
        font-feature-settings: "palt";
        letter-spacing: 0em;
        font-size: 16px;
        color: #ffffff;
    }

    .btn-box {
        width: 100%;
    }

    .btn-box .btn-l a {
        padding: 0.8em 2em 0.8em 2.8em;
        background: url(../imgs/chevron-right-navy.svg) 0.8em center no-repeat #FFFFFF;
        background-size: auto 20px;
        font-size: 16px;
        color: #10318A;
    }

    .btn-box .btn-l a:hover {
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat #10318A;
        background-size: auto 20px;
        color: #ffffff;
    }

    .btn.wht-beta-blue-btn a:hover,
    .btn.wht-beta-blue-btn a:active,
    .btn.wht-beta-blue-btn a:focus {
        background: url(../imgs/chevron-right-navy.svg) 0.8em center no-repeat #FFFFFF;
        background-size: auto 20px;
        color: #10318A;
    }

    .btn.wht-beta-orange-btn a:hover,
    .btn.wht-beta-orange-btn a:active,
    .btn.wht-beta-orange-btn a:focus {
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat #FAA916;
        background-size: auto 20px;
        color: #ffffff;
    }

    .btn.wht-beta-btn a:hover,
    .btn.wht-beta-btn a:active,
    .btn.wht-beta-btn a:focus {
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat #FFFFFF;
        background-size: auto 20px;
    }

    .btn.wht-border-btn a {
        padding: 0.8em 2em 0.8em 2.8em;
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat;
        background-size: auto 20px;
        border-radius: 100px;
        min-width: 100%;
        box-sizing: border-box;
        font-feature-settings: "palt";
        letter-spacing: 0em;
        font-size: 16px;
    }

    .btn.wht-border-btn a:hover,
    .btn.wht-border-btn a:active,
    .btn.wht-border-btn a:focus {
        background: url(../imgs/chevron-right-navy.svg) 0.8em center no-repeat #ffffff;
        background-size: auto 20px;
        color: #10318A;
    }

    .btn.wht-btn a {
        padding: 0.8em 2em 0.8em 2.8em;
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat;
        background-size: auto 20px;
        border-radius: 100px;
        min-width: 200px;
        font-feature-settings: "palt";
        letter-spacing: 0em;
        font-size: 16px;
    }

    .btn.wht-beta-btn a:hover,
    .btn.wht-beta-btn a:active,
    .btn.wht-beta-btn a:focus {
        background: url(../imgs/chevron-right-wht.svg) 0.8em center no-repeat transparent;
        background-size: auto 20px;
    }

    .col3-wrap .col {
        width: 49%;
    }

    .news .col {
        padding-bottom: 20px !important;
        padding-right: 15px !important;
        padding-left: 0px !important;
    }

    .news .col:nth-of-type(2n) {
        padding-right: 0px !important;
        padding-left: 15px;
    }

    .news .col:nth-last-child(1),
    .news .col:nth-last-child(2) {
        padding-bottom: 0px;
    }

    .contact {
        line-height: 1.5;
    }

    .contact li {
        line-height: 1.4;
    }

    #contact .download-box {
        padding: 40px 30px;
    }
    #contact .download-box h2{
        font-size: 28px;
    }
    #contact .download-set{
        width: auto;
    }
    #contact .download-set figure{
        width: 50%;
        padding-right: 15px;
    }

    /*フッター*/
    footer .footer-sitemap{
        width: auto;
    }
    footer .footer-sitemap .colum_wrap{
        width: auto;
        margin-left: 30px;
        margin-right: 30px;
    }
    footer .footer-sitemap .colum_wrap .col ul{
        margin-left: 20px;
    }
    footer .footer-sitemap .colum_wrap .col ul li ul li {
        font-size: 12px !important;
    }
}

/*解像度1200px以下*/

/*--------------------------------------------------------
解像度667px以下
--------------------------------------------------------*/

@media only screen and (max-width : 667px) {
    .sp-only{
        display: block;
    }
    .pc-only{
        display: none;
    }
    html,
    body,
    .containr {
        min-width: 0;
    }

    html {
        overflow-y: scroll;
        overflow-x: hidden;
    }

    html,
    body {
        width: 100%;
        -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
    }

    textarea,
    input {
        max-width: 95%;
    }

    input[type="submit"],
    input[type="image"],
    input[type="reset"],
    input[type="button"],
    input[type="file"] {
        max-width: none;
    }

    .site-header-in,
    .main-body-in,
    .site-footer-in {
        width: 100%;
    }

    .col2 .main-conts,
    .col2 .sub-conts,
    .col2r .main-conts,
    .col2r .sub-conts {
        width: 100%;
    }

    .site-title {
        font-size: 140%;
    }

    .global-nav-panel {
        position: absolute;
        top: 10px;
        right: 10px;
        display: block;
        width: 50px;
        height: 50px;
        cursor: pointer;
    }

    h1.site-logo {
        margin-top: 15px;
        margin-left: 20px;
    }

    .site-logo img {
        height: 38px;
        width: auto;
        margin-top: 0;
        margin-left: 0;
        margin-bottom: 0;
    }

    .site-header-in {
        position: relative;
    }

    .recruit .hero .site-header-conts {
        padding-bottom: 15%;
    }

    .section-wrap .section-in,
    .col1 .section-wrap.wide .section-in {
        padding: 50px 0;
    }

    .section-wrap .section-in .section-title,
    .section-wrap .article-header .section-title {
        margin: 0;
        padding: 0;
        font-size: 2em;
    }

    .main-body h3 {
        font-size: 1.3em;
        line-height: 1.5;
    }

    .main-body h4 {
        font-size: 1.1em;
        line-height: 1.5;
    }

    .breadcrumbs-in {
        padding: 0 1em;
    }

    .breadcrumbs-in li:last-child {
        display: none;
    }

    .eye-catch {
        float: none;
        margin: 0 0 inherit;
        text-align: center;
    }


    .site-footer-nav {
        display: block;
        text-align: left;
    }

    .site-footer-nav li {
        display: list-item;
    }

    .bubble {
        width: 70%;
    }

    .talker {
        width: 25%;
    }

    .bubble:after,
    .bubble:before {
        top: 30px;
    }

    .together .bubble,
    .together .talker {
        width: 100%;
    }

    .together .talker b {
        max-width: 25%;
    }


    /*テーブル（左端がth、右側がtdの場合にスマホ表示で立て並びに変化）*/
    .table-block,
    .table-block thead,
    .table-block tbody,
    .table-block tfoot,
    .table-block tr,
    .table-block th,
    .table-block td {
        display: block;
    }

    .table-block {
        border-bottom: 1px solid #959595;
    }

    .table-block th,
    .table-block td {
        float: left;
        width: 100% !important;
        box-sizing: border-box;
        -moz-box-sizing: padding-box;
    }

    .table-block {
        /zoom: 1;
    }

    .table-block:after {
        content: '';
        display: block;
        clear: both;
        height: 0;
    }

    .thumb,
    .thumb-box,
    #corp .thumb-box,
    .thumb-jinjitter {
        float: none;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        max-width: 80%;
    }

    .thumb-box {
        padding-left: 0;
    }

    #corp table {
        max-width: none;
    }

    .map {
        text-align: center;
    }

    .map iframe {
        max-width: 100%;
        height: 250px;
    }

    .sns-list li {
        margin-left: 0;
        margin-right: 1em;
    }

    .news-item h3 {
        margin-top: 5px;
        padding: 0;
        font-size: 18px;
        font-weight: bold;
        line-height: 1.5;
        font-feature-settings: "palt";
        letter-spacing: 0.05em;
    }

    .add .news-item p,
    #wr-general-information .news-item p {
        margin-top: 5px;
    }

    .sp-hidden {
        display: none;
    }

    .news .news-cont,
    .link-next {
        text-align: right;
    }

    .btn-box {
        max-width: 100%;
        margin: auto;
    }

    .btn-box .btn-l {
        padding: 1em;
    }

    .btn-box .btn-l a {}

    .btn-box .btn-l span {
        font-size: 1em;
        text-align: left;
    }

    .btn-box .btn-form-prev {
        margin: 30px auto 0 auto;
    }

    .btn-box .btn-form,
    .btn-box .btn-form-prev {
        padding: 1em 0em;
        float: none;
        font-size: 18px;
    }

    .btn-box .btn-form-next {
        padding: 1em 3em;
        float: none;
    }

    .btn-box .btn-form button,
    .btn-box .btn-form-prev button {
        margin: -1em;
        padding: 1em 1.5em;
    }

    .btn-box .btn-form-next button {
        margin: -1em -3em;
        padding: 1em 3em;
    }

    .btn-box .btn-form button,
    .btn-box .btn-form-prev button,
    .btn-box .btn-form-next button {
        text-align: left;
    }

    .btn-box .btn-form span,
    .btn-box .btn-form-prev span,
    .btn-box .btn-form-next span {
        font-size: 1em;
    }

    .deco-box,
    .deco-box02 {
        padding: 25px;
    }

    .deco-box p {
        line-height: 1.5;
    }

    .deco-box h3 {
        margin-top: 0;
    }

    .nearest-station,
    .by-taxi {
        padding-left: 1em;
        padding-right: 1em;
    }

    .staff-comment,
    .job-box,
    .step-box {
        margin-top: 20px;
        padding: 20px 10px;
    }

    .step-arw {
        margin-top: 20px;
    }

    .step-arw img {
        width: 107px;
        height: 26px;
    }

    .job-box h3,
    .step-box h3 {
        margin-top: 0;
        font-size: 1.5em;
    }

    .job-box h4 {
        margin-top: 20px;
    }

    /*記述リスト 横並び*/
    .dl-style01 dt,
    .dl-style01 dd {}

    .dl-style01 dt {
        float: none;
        width: auto;
        padding: 0;
        padding-top: 20px;
    }

    .dl-style01 dd {
        padding: 20px 0;
    }

    .home #contact h2,
    .home #download h2 {
        font-size: 24px;
    }

    .home #contact p,
    .home #download p {
        line-height: 1.5;
        font-size: 14px;
    }

    .news .col {
        padding-bottom: 20px !important;
        padding-right: 0px !important;
        padding-left: 0px !important;
    }

    .news .col:nth-of-type(2n) {
        padding-right: 0px !important;
        padding-left: 0px !important;
    }

    .news .col:nth-last-child(1) {
        padding-bottom: 0px;
    }

    .col3-wrap .col {
        width: 100%;
    }

    #navi #menu {
        right: 0px;
    }

    #navi #navibtn {
        right: 5px;
    }

    .hero .site-header-conts .site-title {
        padding: 10% 30px 0px 30px;
    }
    .btn a{
        font-size: 16px;
    }
    .col1 .section-wrap,
    .col1 .breadcrumbs,
    .col1 .pankuzu,
    .col1 .section-wrap.wide{
        padding-left:20px;
        padding-right:20px;
    }
    .section-wrap .section-in h2.section-title,
    .section-wrap .article-header h2.section-title{
        font-size: 38px;
        margin-bottom: 20px;
    }
    .section-wrap .section-in h2.section-title .en,
    .section-wrap .article-header h2.section-title .en{
        margin-bottom: 10px;
    }
    .col1 .section-wrap.wide .section-in .body-copy{
        font-size: 17px;
    }

    .home .hero .site-header-conts .top-view-news {
        position: relative;
    }
    .home .hero{
        height: auto !important;
    }

    #members-page .col-wrap {
        margin-top: 50px;
        margin-bottom: 0;
    }
    #members-page .col-wrap .col {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
    }
    #members-page .col-wrap .col .icon{
        width: 120px;
        height: 120px;
        margin-top: 0;
        margin-bottom: 15px;
    }
    #members-page .col-wrap .col h4,
    #members-page .col-wrap .col .dsc,
    #members-page .col-wrap .col .point{
        margin-left :0;
        margin-right :0;
    }
    #members-page .col-wrap .col h4{
        margin-bottom: 15px;
    }
    #members-page .col-wrap .col .point{
        margin-bottom : 40px;
        margin-left: 10px;
        margin-right: 10px;
    }
    #members-page .col-wrap .col:last-child .point{
        margin-bottom: 0;
    }

    #recruit.section-wrap{
        padding-left: 0;
        padding-right: 0;
    }
    #recruit.section-wrap .section-in h2.section-title{
        font-size: 34px;
    }
    footer .footer-sitemap {
        padding-top: 60px;
        padding-bottom: 20px;
    }
    footer .footer-sitemap .footer-logo{
        width: 70%;
        margin-bottom: 60px;
    }
    footer .footer-sitemap .colum_wrap{
        flex-direction: column;
        margin-left: 20px;
        margin-right: 20px;
    }
    footer .footer-sitemap .colum_wrap .col {
        width: 100%;
    }
    footer .footer-sitemap .colum_wrap .col ul {
        margin-left: 0px;
    }
    footer .footer-sitemap .colum_wrap .col ul li ul li {
        font-size: 14px !important;
    }
    .copyright {
        font-size: 12px;
    }
}

/*--------------------------------------------------------
解像度480px以下
--------------------------------------------------------*/
@media only screen and (max-width : 480px) {

    /*段組*/
    .col4-wrap,
    .col3-wrap,
    .col2-wrap {
        margin: 1em 0 0;
    }

    .col4-wrap .col,
    .col4-wrap .col_2of4,
    .col4-wrap .col_3of4,
    .col3-wrap .col_2of3,
    .col2-wrap .col {
        float: none;
        display: block;
        max-width: 80%;
        margin: auto;
        margin-bottom: 1em;
    }

    .col4-wrap .col:first-child,
    .col4-wrap .col_2of4:first-child,
    .col4-wrap .col_3of4:first-child,
    .col3-wrap .col:first-child,
    .col3-wrap .col_2of3:first-child,
    .col2-wrap .col:first-child {
        margin-left: auto;
    }

    .col4-wrap .col,
    .col4-wrap .col_2of4,
    .col4-wrap .col_3of4,
    .col3-wrap .col,
    .col3-wrap .col_2of3,
    .col2-wrap .col {
        width: auto;
    }

    #access .col2-wrap .col {
        max-width: 100%;
    }

    .table-consulting-plan:before {
        display: block;
        width: 100%;
        content: '※横にスクロールできます。';
    }

    .table-consulting-plan table {
        width: 670px;
    }

    .left,
    .right {
        float: none;
        margin-right: 0;
        margin-left: 0;
        text-align: center;
    }

}

/*--------------------------------------------------------
解像度360px以下
--------------------------------------------------------*/
@media only screen and (max-width : 360px) {

    .site-logo {
        width: 80%;
    }

}

/*解像度360px以下*/

/*------------------------------------------------------------
　template created by web-rider
-------------------------------------------------------------*/