@charset "UTF-8";
/* CSS Document */

.main-container {
    /* width: 1000px; */
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.5;
    font-feature-settings: "palt";
    letter-spacing: 0.1em;
    text-align: center;
    background-color: #f8f5f1;
}

/* section {
    margin: 40px 0;
} */

.useful-services {
    background-color: #fff;
    padding: 24px 0 56px;
}

.categories-shops-search {
    background-color: #fff;
    padding: 24px 0 16px;
}


/* .main-container section:nth-child(2n){
    background-color: #fff;
    margin: 0 calc(50% - 50vw);
    padding: 16px calc(50vw - 50%) 40px;
} */

.ttl_box_img {
    padding-top: 32px;
}

.ttl_box_img img {
    width: 100%;
    aspect-ratio: 5/2;
}

.ttl_lead {
    padding: 0 0 40px;
}

h1 {
    font-size: 24px;
    margin: 16px 0 32px;
}

.useful-services ul {
    width: 1000px;
    display: flex;
    justify-content: space-evenly;
    letter-spacing: normal;
    margin: 16px auto 24px;
    position: relative;
}

.useful-services ul li {
    background-color: #fff;
    width:20%;
    border: 3px solid #E3D6C4;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    align-content: center;
}

.useful-services ul li img {
    width: 100%;
    aspect-ratio: 6/5;
}


.useful-services ul li .services-icons {
    width: 75%;
    margin-top: 16px;
}




.services-txt {
    padding: 15px 0 0;
}

.services-ttl-ss {
    font-size: 12px;
    position: absolute;
    top: 35%;
    right: 5%;
}

.services-ttl-s {
    font-size: 16px;
}

.services-ttl-l {
    display: block;
    font-size: 24px;
}


.txt-align-left {
    text-align: left;
    letter-spacing: initial;
}

.under-sign-form-area {
    background: #fff;
    padding: 32px;
}

.under-sign-form-buttons {
    width: 1000px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.more-show-button-white {
    display: block;
    background-color: #fff;
    color: #616161;
    font-weight: bold;
    border-radius: 4px;
    border: solid 1px #45423f;
    width: 320px;
    margin: 24px auto 0;
    padding: 13px;
    position: relative;
    transition: all 0.2s linear;
}

.more-show-button-white::after{
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-top: 1px solid #9E9E9E;
    border-right: 1px solid #9E9E9E;
    -webkit-transform: rotate(40deg) skew(-10deg, 0);
    transform: rotate(40deg) skew(-10deg, 0);
    transition: all 0.2s linear;
    position: absolute;
    top: 41%;
    right: 9px;
    margin-left: 8px;
}

.more-show-button-white-1 {
    display: block;
    background-color: #fff;
    color: #616161;
    font-weight: bold;
    border-radius: 4px;
    border: solid 1px #45423f;
    width: 320px;
    margin: 24px 24px 0;
    padding: 13px;
    position: relative;
    transition: all 0.2s linear;
}

.more-show-button-white-1::after{
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-top: 1px solid #9E9E9E;
    border-right: 1px solid #9E9E9E;
    -webkit-transform: rotate(40deg) skew(-10deg, 0);
    transform: rotate(40deg) skew(-10deg, 0);
    transition: all 0.2s linear;
    position: absolute;
    top: 41%;
    right: 9px;
    margin-left: 8px;
}

.more-show-button-white-2 {
    display: block;
    background-color: #fff;
    color: #616161;
    font-weight: bold;
    border-radius: 4px;
    border: solid 1px #45423f;
    width: 320px;
    margin: 24px auto 0;
    padding: 5px;
    position: relative;
    height: 39px;
    transition: all 0.2s linear;
}

.more-show-button-white-2::after{
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-top: 1px solid #9E9E9E;
    border-right: 1px solid #9E9E9E;
    -webkit-transform: rotate(40deg) skew(-10deg, 0);
    transform: rotate(40deg) skew(-10deg, 0);
    transition: all 0.2s linear;
    position: absolute;
    top: 41%;
    right: 9px;
    margin-left: 8px;
}

.sign-form-button-black {
    display: block;
    background-color: #45423f;
    color: #fff;
    font-weight: bold;
    border-radius: 4px;
    width: 320px;
    margin: 24px 24px 0;
    padding: 13px;
    position: relative;
    transition: all 0.2s linear;
}

.sign-form-button-black a {
    color: #fff;
    display: block;
    width: 100%;
}

.sign-form-button-black::after{
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    border-top: 1px solid #9E9E9E;
    border-right: 1px solid #9E9E9E;
    -webkit-transform: rotate(40deg) skew(-10deg, 0);
    transform: rotate(40deg) skew(-10deg, 0);
    transition: all 0.2s linear;
    position: absolute;
    top: 41%;
    right: 9px;
    margin-left: 8px;
}


.more-show-button-white a, .more-show-button-white-1 a, .more-show-button-white-2 a{
    display: block;
    width: 100%;
}

/* hover */
.more-show-button-white:hover, 
.more-show-button-white-1:hover,
.more-show-button-white-2:hover {
    background-color: #eee;
    transition: all 0.2s linear;
}

.sign-form-button-black:hover {
    opacity: 0.7;
    transition: all 0.2s linear;
}

.m-slide-unit a:hover {
    opacity: 0.7;
    transition: all 0.2s linear;
}

.useful-services ul li a:hover{
    opacity: 0.7;
    transition: all 0.2s linear;
}

@media print,screen and (max-width: 640px){
    .main-container {
        width: 100%;
    }

    .ttl_box_img img {
        aspect-ratio: 65/53;
    }

    .ttl_lead {
        text-align: left;
    }

    .useful-services ul {
        flex-wrap: wrap;
        width: 100%;
    }

    .useful-services ul li {
        width: 45%;
    }

    .useful-services ul li:nth-child(n+3) {
        margin-top: 9px;
    }

    h1 {
        font-size: 20px;
    }

    .services-ttl-l {
        font-size: 20px;
    }

    .services-ttl-ss {
        top: 67%;
        right: 6%;
    }

    .under-button-area {
        padding: 0 12px;
    }
    
    .under-sign-form-area {
        padding: 32px 12px 24px;
    }

    .under-sign-form-buttons {
        width: 100%;
        flex-wrap: wrap;
        margin: 0 auto 24px;
    }

    .more-show-button-white, .more-show-button-white-2 {
        width: 90%;
        font-size: 14px;
    }

    .sign-form-button-black, .more-show-button-white-1 {
        width: 90%;
        margin: 0 0 24px;
    }

    .categories-shops-search {
        background: initial;
        margin: 16px 0;
    }

    /* .main-container section:nth-child(2n){
        background-color:initial;
    } */

    /* .main-container section:nth-child(2) {
        background-color: #fff;
    } */
}

/* オリジナルショップスライダー追加css */
  .l-slide-unit-container {
    position: relative;
  }

  .m-slide-unit-main {
    margin-left: 6px;
    margin-right: 6px;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    }

  .m-slide-unit-main-wrapper {
  /* wrapperのサイズを調整 */
  width: 100%;
  height: 300px;
  /* ここから追加 */
  position: relative;
  width: 100%;
  height: auto;
  z-index: 1;
  display: flex;
  align-items:stretch;
  transition-property: transform;
  box-sizing: content-box;
}

.m-slide-unit {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: #ffffff;
  width: 50%;
  height: auto;  /* 100%にするとflexの高さが揃わない */
  text-align: center;
}

.m-slide-unit a {
    display: block;
    margin-bottom: 12px;
    margin-left: 6px;
    /* margin-left: auto;
    margin-right: auto; */
    padding: 12px;
    width: calc(100% - 36px);
    /* height: calc(100% - 36px); */
}

.m-slide-sub-button-next, .m-slide-sub-button-prev, .swiper-button-next, .swiper-button-prev {
    width: 20px;
    height: 100%;
    position: absolute;
    left: 1px;
    top: 0px;
    background: url(https://www.t-fashion.jp/assets/frontend/btn-slide-index-main-left-3240a25ce9e8927113e690a05fc403914a7d9b0f75d92f1076124bcc8edf303a.png) 0 center no-repeat;
    -webkit-background-size: 15px auto;
    background-size: 19px auto;
    z-index: 2;
    cursor: pointer;
} 

.m-slide-sub-button-next,
.m-slide-sub-button-next, .swiper-button-next{
    right: 1px;
    left: auto;
    background: url(https://www.t-fashion.jp/assets/frontend/btn-slide-index-main-right-e932f3915d6e91b7c277ce261d3247804780b7e862ccffd2a4e886f27f867acf.png) right center no-repeat;
    -webkit-background-size: 15px auto;
    background-size: 19px auto;
}

@media print, screen and (min-width: 641px) {
  .l-slide-unit-container {
    width: 1010px;
    margin-left: auto;
    margin-right: auto;
  }

  .m-slide-unit-main {
    width: 1010px;
    margin-left: auto;
    margin-right: auto;
  }

  .m-slide-unit {
    height: auto;  /* 100%にするとflexの高さが揃わない */
    width: 25%;
}

  .m-slide-unit a {
    padding: 16px;
    width: calc(100% - 44px);
    height: calc(100% - 44px);
  }

  .m-slide-sub-button-next, .m-slide-sub-button-prev,
  .swiper-button-prev{
    width: 55px;
    left: -48px;
    background: url(https://www.t-fashion.jp/assets/frontend/btn-slide-index-main-left-pc-975a6861fb866eb835633bc9bc03756569ee5f27f2196d6c38a3e703341da467.png) 0 center no-repeat;
    -webkit-background-size: auto;
    background-size: auto;
  }
  .m-slide-sub-button-next,
  .m-slide-sub-button-next, .swiper-button-next{
    width: 55px;
    right: -42px;
    left: auto;
    background: url(https://www.t-fashion.jp/assets/frontend/btn-slide-index-main-right-pc-19f8353a3ca436c82d01680cc88ef2275a05f7e321b3cafcb7e5eee825e7c873.png) right center no-repeat;
    -webkit-background-size: auto;
    background-size: auto;
  }

  }

  @media print, screen and (min-width: 1120px) {  
  .m-kv-index .m-kv-index-sub .m-slide-sub-button-prev,
  .l-slide-unit-container .m-slide-sub-button-prev {
    left: -55px;
  }
  .m-kv-index .m-kv-index-sub .m-slide-sub-button-next,
  .l-slide-unit-container .m-slide-sub-button-next {
    right: -55px;
  }
  }

  @media print, screen and (max-width: 640px) { 
    .m-slide-unit a {
        margin-left: auto;
        margin-right: auto;
        display: flex;
        flex-direction: column;
    }

    .shop-link-container {
        display: flex;
        height: 50%;
    }

    .shop-link-container-txt {
        margin-top: auto;
    }
    
  }
