@charset "utf-8";
/* ------------------------------------------------------------

  group sp

------------------------------------------------------------ */
@media screen and (max-width: 980px) {

    .spNone { display: none !important; }
    .spOnly { display: block !important; }
    .spOnly--ib { display: inline-block !important; }
    .pcOnly { display: none !important; }

    html {
        font-size: 14px;
    }
    body {
        position: relative;
    }

    .x-hover {
        border: solid 4px #000;
    }
    .x-hover:hover {
        border: solid 4px transparent;
    }



    /* footer
    ------------------------------------------------------------ */
    .sf__menus{
        padding: 0 20px;
    }
    .sf__menu-link:hover span:after {
        -webkit-transform: scaleX(0.0);
        -moz-transform: scaleX(0.0);
        -ms-transform: scaleX(0.0);
        -o-transform: scaleX(0.0);
        transform: scaleX(0.0);
    }
    .sf__shared {
        margin: 0 15px;
    }
    /* site-header
    ------------------------------------------------------------ */
    .sp-menu {
        z-index: 999;
        position: fixed;
        width: 100%;
    }
    .sh__menu-btn-outer {
        /*z-index: 1;*/
        /*position: fixed;*/
        width: 100%;
        top: 0;
        line-height: 1;
    }
    .sh__menu-btn-outer--index {
        background-color: rgba(0, 0, 0, 0.1);
    }
    .sh__menu-btn-outer--sub {
        background-color: rgba(255, 255, 255, 0.2);
    }
    .sh__menu-btn-outer--sub .bar {
        background-color: #5c5c5c;
    }
    .sh__icon {
        padding: 20px 30px;
        z-index: 1;
        position: relative;
        top: 0;
        left: 0;
        display: inline-block;
        line-height: 1;
    }
    .sh__icon img {
        vertical-align: top;
    }
    .sh__menu-btn {
        z-index: 1;
        position: absolute;
        top: 0;
        right: 0;
        padding: 0;
        display:inline-block;
    }
    .sh__menu-btn__inner {
        position: relative;
        width: 25px;
        height: 59px;
        padding: 0 40px;
    }


    .sh__menu-btn--open {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        width: 25px;
        height: 25px;
        padding: 30px;
    }
    .sh__nav {
        background-color: transparent;
        z-index: 2;
        position: absolute;
        top:0;
        height: 100%;
        text-align: center;
        border:none;
    }
    .sh__menus {
        height: 100%;
    }
    .sh__menu {
        padding: 0;
        display: block;
        padding-top: 60px;
        width: 50%;
        float: left;
    }
    .sh__menu-link {
        letter-spacing: 1px;
        color: #fff;
        font-size: 12px;
    }
    .sh__menu-link:after {
        display: none !important;
        opacity: 0;
        visibility: hidden;
    }
    .sh__menu-link.active ,
    .sh__menu-link:hover {
        color: #fff;
    }
    .sh__menu-link--cs {
        color: #999;
    }
    .sh__menu-link--cs:hover {
        color: #999;
    }
    .sh__menu-overlay {
        z-index: 1;
        position: absolute;
        top: 0;
        width: 100%;
        height: 120%;
        background-color: rgba(0,0,0,0.8);
    }


    /* site-footer
    ------------------------------------------------------------ */
    .sf__page-top {
        display: inline-block;
        margin-top: 30px;
    }
    .sf__inner {
        padding: 30px 0 65px;
    }
    .sf__nav {
        border: none;
    }
    .sf__logo {
        margin-bottom: 0.6em;
    }
    .sf__menu {
        border-bottom: solid 1px #e1e1e1;
        display: block;
    }
    .sf__menu-link {
        display: block;
        padding: 18px 16px;
    }
    .sf__menu:first-child {
        border-top: solid 1px #e1e1e1;
    }
    .sf__copyright {
        font-size: 12px;
    }
    .sf__menu-link:after {
        border-top: none;
    }
    .sf__shared--fb {
        background: url(../images/sp/common/f_fb.png) no-repeat 50% 50%;
        background-size: contain;
    }
    .sf__shared--tw {
        background: url(../images/sp/common/f_tw.png) no-repeat 50% 50%;
        background-size: contain;
    }
    /* sec
    ------------------------------------------------------------ */
    .sec {
        padding-top: 30px;
    }
    .sec--pt0 {
        padding-top: 0;
    }
    .sec--ptcnt {
        padding-top: 60px;
    }
    .sec__ttl{
        font-size: 27px;
    }
    .sec__ttl--ja{
        font-size: 10px;
    }
    .sec__head {
        line-height: 1;
        padding: 20px 10px 26px;
    }
    .sec__contents {
        padding-bottom: 30px;
    }
    .sec__ttl {
        margin-bottom: 0.4em;
    }
    .sec__ttl--ja {
        padding-top: 1.0em;
    }
    /* page head
    ------------------------------------------------------------ */
    .page-head {
        border-top: 1px solid #E0E0E0;
        padding: 30px 10px 20px;
    }
    .page-ttl {
        font-size: 32px;
    }

    /* page-content-sub
    ------------------------------------------------------------ */
    .pc-sub {
        padding-top: 60px;
        background-color: #fff;

    }
    .ov {
        z-index: -1;
        background-color: transparent;
        position: absolute;
        top: 50px;
        left: 0;
        width: 100%;
        height: 400px;
        overflow: hidden;

        filter: alpha(opacity=000);
        -moz-opacity: 0.0;
        opacity: 0.0;

        -webkit-transition  : 1000ms ease-in;
        -moz-transition     : 1000ms ease-in;
        -ms-transition      : 1000ms ease-in;
        -o-transition       : 1000ms ease-in;
        transition          : 1000ms ease-in;
    }

    /* sec-sub
    ------------------------------------------------------------ */
    .sec-sub__img {
        padding: 0;
    }
    .sec-sub__head {
        padding: 20px 20px 20px;
    }
    .sec-sub__head--top {
        padding-top: 0;
    }
    .sec-sub__head--sm {
        padding: 0 20px 0;
    }
    .sec-sub__head--sppt0 {
        padding-top: 0;
    }
    .sec-sub__ttl {
        letter-spacing: 2px;
        margin-bottom: 30px;
        font-size: 16px;
    }
    .sec-sub__ttl--italic {
        font-size: 20px;
    }
    .sec-sub__ttl--ja {
        letter-spacing: 2px;
    }
    .sec-sub__subttl {
        margin-bottom: 34px;
        font-size: 20px;
    }
    .sec-sub__subttl--wy {
        margin-bottom: 25px;
    }
    .sec-sub__txt {
        padding: 0;
        letter-spacing: 1px;
        margin-bottom: 20px;
        font-size: 15px;
    }
    .sec-sub__txt--ja {
        font-size: 11px;
    }
    .sec-sub__thumbs {
        padding: 0;
    }
    .sec-sub__thumb-txt {
        font-size: 20px;
    }
    .sec-sub__thumb--04 {
        width: 50%;
    }
    .sec-sub__thumb--02 {
        width: 100%;
    }

    /* contents
    ------------------------------------------------------------ */
    .cnts {
        width: 320px;
        margin: 0 auto;
        /*margin-left: 0;*/
        /*padding: 0 20px;*/
        letter-spacing: -0.4em;
    }
    .cnts__item {
        letter-spacing: normal;
        width: 140px;
        margin-left: 0;
        margin-bottom: 0;
    }
    .cnts__item img {
        width: 100%;
        height: auto;
    }
    .cnts__item-ttl {
        padding: 10px 10px 6px;
        font-size: 12px;
    }
    .cnts__item-ttl__outer {
        line-height: 140px;
    }
    .banner {
        margin-top: 20px;
    }

    /* lookbook A
    ------------------------------------------------------------ */
    .lb {
        margin-top: 0;
        padding: 0 7px 0;
    }
    .lb__obj {
        padding: 0 7px 14px;

        -webkit-transition: none;
        -moz-transition: none;
        -ms-transition: none;
        -o-transition: none;
        transition: none;
        filter: alpha(opacity=100); -moz-opacity: 1.0; opacity:1.0;
        -webkit-transform: translateY(0px);
        -moz-transform: translateY(0px);
        -ms-transform: translateY(0px);
        -o-transform: translateY(0px);
        transform: translateY(0px);
    }
    .ci {
        padding-bottom: 28px;
        margin-left: 0;
    }
    .ci__item {
        padding: 0 10px;
        width: 32%;
        margin: 10px 0 0;
    }
    .ci__item img {
        width: 79px;
        height: auto;
    }
    .ci__hover {
        display: none;
    }
    .ci__ttl {
        font-size: 12px;
    }
    .stt__ttl, .stt__txt {
        padding: 6px 3px;
    }
    .stt__txt {
        font-size: 11px;
    }
    .sec-sub__ttl--spt {
        margin-bottom: 0;
        font-size: 18px;
    }
    .sec-sub__ttl--spcast {
        margin-bottom: 20px;
        font-size: 18px;
    }

    /* showroom
    ------------------------------------------------------------ */
    .sr {
        padding: 0 20px;
    }
    .sr__map {
        padding: 0;
    }
    .sr__map-window {
        display: none;
    }
    .sr__map {
        height: 240px;
    }
    .sr__map-outer {
        padding: 0px 20px;
    }
    #googlemap {
        height: 240px;
    }

    /* sitemap
    ------------------------------------------------------------ */
    .sm {
        padding: 0 20px;
    }
    .sm--left {
        padding: 0 20px;
    }
    .sm__ttl {
        margin-bottom: 0.7em;
        width: 100%;
        padding: 0;
        display: block;
        text-align: center;
        font-size: 15px;
    }
    .sm__txts {
        margin-bottom: 46px;
        width: 100%;
        padding: 0;
        display: block;
        text-align: center;
        font-size: 11px;
    }
    .sm__txt {
        line-height: 2;
        font-size: 11px;
    }
    .sm__txt-txt {

    }
    .sm__txt--left {
        text-align: left;
    }
    .sm__txt--table {
        display: table;
    }
    .sm__txt-date ,
    .sm__txt-txt {
        display: table-cell;
        vertical-align: top;
        letter-spacing: 1px;
    }
    .sm__txt-date {
        padding-right: 1.8em;
    }

    /* privacy policy
    ------------------------------------------------------------ */
    .pp {
        padding: 0 20px;
        margin-top: 0;
    }
    .pp__block {
        width: auto;
        margin-bottom: 2em;
    }
    .pp__row {
        padding-bottom: 0;
    }
    .pp__ttl {
        margin-bottom: 1em;
        font-size: 14px;
    }
    .pp__txt {
        font-size: 11px;
        letter-spacing: 1px;
    }
    .pp__block ul li {
        font-size: 11px;
    }

    /* jobs
    ------------------------------------------------------------ */
    .toj {
        padding: 0 20px;
    }
    .toj__row {
        margin-left: 0;
        padding-bottom: 0;
    }
    .toj__block {
        display: block;
        margin: 0 auto 50px;
    }
    .toj__img {
        margin-bottom: 16px;
    }
    .toj__ttl {
        margin-bottom: 8px;
        font-size: 15px;
    }
    .toj__subttl {
        margin-bottom: 15px;
        font-size: 11px;
    }
    .toj__txt {
        margin-bottom: 20px;
        font-size: 11px;
    }
    .toj__link {
        font-size: 13px;
        border: solid 2px #3b3b3b;
    }
    .jd__table {
        width: 100%;
    }
    .jd__ttl {
        vertical-align: top;
        padding: 15px 10px;
        min-width: 1px;
        font-size: 11px;
        white-space: nowrap;
    }
    .jd {
        padding: 0 20px 20px;
    }
    .jd__txt {
        padding: 15px 10px;
        font-size: 11px;
    }
    .jan {
        margin-bottom: 0;
        padding: 0 20px;
        width: 300px;
        margin: 0 auto;
    }
    .jan__link {
        padding: 14px 10px;
        border: solid 2px #000;
        font-size: 15px;
        width: 100%;
        max-width: 200px;
        margin: 0 0 20px;
    }
    .jan__link span {
        margin-top: 8px;
        font-size: 12px;
    }

    /* company
    ------------------------------------------------------------ */
    .sm__txt--left {
        max-width: none;
        white-space: normal;
    }
    .sm__list li {
        text-align: left;
        font-size: 11px;
    }
    .cm {
        padding: 0;
    }
    .cm__block {
        padding: 0;
    }
    .cm__ttl {
        font-size: 11px;
        padding: 17px 10px;
    }
    .cm__ttl.on {
        background-color: #303030;
    }
    .cm__map {
        height: 240px;
    }
    .cm__close {
        padding: 15px 10px;
    }
    .cm__plus--close img {
        width: 12px;
        height: 12px;
    }
    .cm__btn:hover .cm__ttl {
        background-color: #303030;
    }
    .cm__btn:hover ~ .cm__plus {
        height: 0;
    }
    .cm__plus:hover {
        height: 0;
        background-color: #303030;
    }
    /* company
    ------------------------------------------------------------ */
    .sec-sub__head--news {
        padding-bottom: 8px;
    }
    .news {
        width: 286px;
        margin: 0 auto;
    }
    .news + .news {
        margin-top: 40px;
    }
    .news__inner {
        text-align: left;
        margin-left: -20px;
    }
    .news__archive-year {
        font-size: 12px;
    }
    .news__block {
        width: 130px;
        margin-left: 20px;
        margin-bottom: 30px;
    }
    .news__head {
        margin-bottom: 0.4em;
        font-size: 35px;
    }
    .news__head-more {
        top: 0;
        width: 110px;
        font-size: 11px;
        height: auto;
        padding: 12px 2px 10px;
        white-space: nowrap;
    }
    .news__info {
        white-space: nowrap;
        margin-bottom: 0.4em;
    }
    .news__date {
        padding-right: 10px;
        font-size: 10px;
    }
    .news__cat {
        padding-left: 10px;
        font-size: 10px;
    }
    .news__ttl {
        font-size: 10px;
    }
    .news__paginate > * {
        font-size: 16px;
    }

    /* news detail
    ------------------------------------------------------------ */
    .sec--nd {
        padding-top: 10px;
    }
    .nd {
        min-width: 1px;
        padding: 0 20px;
    }
    .nd__info {
        margin-bottom: 42px;
    }
    .nd__date {
        padding-right: 10px;
        font-size: 12px;
    }
    .nd__cat {
        padding-left: 10px;
        font-size: 12px;
    }
    .nd__ttl {
        font-size: 20px;
    }
    .nd__contents {
        font-size: 11px;
    }
    .nd__contents p {
        margin-bottom: 30px;
    }
    .nd__contents div {
        max-width: 100%;
    }
    .nd__contents iframe {
        max-width: 100%;
    }
    .nd__contents img {
        max-width: 100%;
        height: auto;
    }
    /* contact
    ------------------------------------------------------------ */
    .contact {
        padding: 0 20px;
    }
    .ct {
        display: block;
    }
    .c__step {
        margin-bottom: 25px;
    }
    .c__note {
        margin-bottom: 25px;
        font-size: 11px;
    }
    .ct__row {
        padding-bottom: 0;
    }
    .ct__ttl {
        margin-bottom: 1em;
        width: 100%;
        padding-right: 0;
        min-width: 1px;
        display: block;
        text-align: left;
        font-size: 12px;
    }
    .ct__ttl--top {
        padding-top: 0;
    }
    .ct__cnt {
        display: block;
    }
    .ct__cnt {
        text-align: left;
    }
    .ct__cell {
        padding-bottom: 1.1em;
    }
    .ct__cell--max {
        width: 100%;
    }
    .ct__cell--half {
        width: 48%;
    }
    .ct__cell--half:first-child {
        margin-right: 3%;
    }
    .ct__cell--half:last-child {
        float: right;
    }
    .ct__cell--sm {
        width: 80%;
    }
    .ct__cell--xm {
        padding: 1em 0;
    }
    .ct__cell--spsm {
        width: 40%;
    }
    .ct__input ,
    .ct__select {
        background-position: 98%;
        background-size: 32px;
        font-size: 11px;
        padding: 8px 15px;

        box-shadow: none;
        border-radius: 0;
        -webkit-appearance:none;  /* Remove default shadow */
    }
    .ct__list label {
        text-align: center;
    }
    .ct__txt {
        padding: 15px;
        font-size: 11px;
    }
    .ct__txt--bn {
        padding: 0;
    }
    .ct__policy {
        padding: 10px;
    }
    .ct__btns {
        margin-top: 0;
    }
    .ct__btn {
        margin: 0 15px;

        -webkit-transition: none;
        -moz-transition: none;
        -ms-transition: none;
        -o-transition: none;
        transition: none;
    }
    .ct__val {
        background-color: #f0f0f0;
        min-height: 3.4em;
        margin-left: 0;
        padding: 12px 16px;
        font-size: 11px;
    }
    .cc__ttl {
        margin-bottom: 1.3em;
    }
    .cc__txt {
        font-size: 11px;
        letter-spacing: 1px;
    }
    .ct__err {
        font-size: 11px;
    }
}
