@charset "utf-8";

/**
 *
 * global: サイト共通
 *
 */

main a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent;}
/* change colours to suit your needs */
main ins { background-color:#ff9; color:#000; text-decoration:none;}
/* change colours to suit your needs */
main mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold;}
main del { text-decoration: line-through;}
main abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help;}
main table { border-collapse:collapse; border-spacing:0;}
main ul {list-style:none;}
main ol { list-style-type: none;}
main img { width: 100%; max-width: 100%; height: auto; line-height: 0;}
main br { line-height: 1 !important;}
main button{
 background-color: transparent;
 border: none;
 cursor: pointer;
 outline: none;
 padding: 0;
 appearance: none;
}
main figure,
main picture {
 display: block;
 line-height: 0;
}

/* change border colour to suit your needs */
hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0;}
input, select { vertical-align:middle;}

main *, main ::after, main ::before {
 float: none;
 box-sizing: border-box;
}

@media screen and (min-width: 961px) {
 #b-menu { display: none !important;}
 .swp-camp-set.pc { padding-bottom: 120px;}
}

/*--------------------------------------------------------------------------
 html
---------------------------------------------------------------------------*/
html {}

/*----------------------------------------------------------------------
 a
----------------------------------------------------------------------*/
main a,main a:link,main a:visited,main a:focus,main a:active {
 color: #000;
 outline:none;
 text-decoration: none;
}
main a {
 -webkit-transition:  all 0.4s;
 -moz-transition:  all 0.4s;
 -o-transition:  all 0.4s;
 transition:  all 0.4s;
}
main a:hover { color: #000;}

/*--------------------------------------------------------------------------
 body
---------------------------------------------------------------------------*/
main {
 padding: 0;
 display: block;
}
main *,
.remodal * {
 margin: 0;
 padding: 0;
 letter-spacing: 0.1em;
 line-height: 1.8;
 color: #000;
 font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
 font-style: normal;
 font-size: 14px;
 -webkit-font-smoothing: antialiased;
 -webkit-text-size-adjust:100%;
}
.pc { display: block;}
.sp { display: none;}
main section { background: transparent;}
main a, main span, main b, main small,
.remodal a, .remodal span, .remodal b, .remodal small {
 vertical-align: baseline;
 letter-spacing: inherit;
 line-height: inherit;
 color: inherit;
 font-family: inherit;
 font-size: inherit;
 font-weight: inherit;
}
main a i { padding: 0;}

@media all and (max-width: 1200px){
 main {
  padding-top: 0;
  padding-bottom: 120px;
 }
}
@media all and (max-width: 960px){
 main { padding-top: 0;}
}
/* @SP */
@media all and (max-width: 768px){
 #body {
  min-width: 375px;
  height: 100vh;
 }
 .pc { display: none;}
 .sp { display: block;}
 main { padding-bottom: 0;}
}
main a:hover img { opacity:1;}

/*--------------------------------------------------------------------------
 clearfix
---------------------------------------------------------------------------*/
.cf::before, .cf::after { content: " "; display: table;}
.cf::after { clear: both;}
.cf { *zoom: 1;}

/*--------------------------------------------------------------------------
 width
---------------------------------------------------------------------------*/
.container-ll {
 max-width: 1536px;
 margin: 0 auto;
}
.container-l {
 max-width: 1440px;
 margin: 0 auto;
}
.container-m {
 max-width: 1380px;
 margin: 0 auto;
}
.container-s {
 max-width: 1200px;
 margin: 0 auto;
}
.container-s {
 max-width: 1080px;
 margin: 0 auto;
}


/*--------------------------------------------------------------------------
 title
---------------------------------------------------------------------------*/
.ja-min {
 font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "游明朝体", "Yu Mincho", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
 font-weight: 300;
}
.tit-box {
 margin-bottom: 40px;
 padding-bottom: 60px;
 text-align: center;
 position: relative;
 line-height: 1;
}
.tit-box::after {
 content: "";
 width: 1px;
 height: 40px;
 display: block;
 background-color: #000;
 opacity: 0.3;
 position: absolute;
 left: 50%;
 bottom: 0;
}
.tit-box .en-tit {
 letter-spacing: 0.04em;
 font-family: moderno-fb, serif;
 font-size: 40px;
 font-weight: 400;
 line-height: 1;
 display: block;
}
.tit-box .ja-tit {
 padding-top: 0.8em;
 line-height: 1;
 font-size: 12px;
 font-weight: 300;
}
.tit-box small {
  display: block;
  font-size: 11px;
  padding-top: 11px;
  color: #999;
  line-height: 1.5;
  padding-top: 15px;
  color: #C4537D;
}
.tit-box + .lead-txt {
 text-align: center;
 line-height: 2;
 font-size: 14px;
}

@media screen and (max-width: 1200px) {
 .tit-box {
  margin-bottom: 30px;
  padding-bottom: 50px;
 }
 .tit-box::after { height: 30px;}
 .tit-box .en-tit { font-size: 32px;}
 .tit-box .ja-tit {
  padding-top: 10px;
  font-size: 10px;
 }
 .tit-box + .lead-txt { font-size: 12px;}
}
@media screen and (max-width: 768px) {
 .tit-box {
  margin-bottom: 20px;
  padding-bottom: 40px;
 }
 .tit-box .en-tit { font-size: 30px;}
 .tit-box .ja-tit {
  padding-top: 10px;
  font-size: 9px;
 }
 .tit-box + .lead-txt {
  text-align: justify;
  font-size: 11px;
 }
}


/*--------------------------------------------------------------------------
 Aimation
---------------------------------------------------------------------------*/
.fade-in { opacity: 0;}
.in {
 -webkit-animation-name: fadeIn;
 animation-name: fadeIn;
 animation-duration: 1s;
 animation-fill-mode: forwards;
 animation-timing-function: ease;
}

@-webkit-keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}

@keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}

.fade-up {
 opacity: 0;
 transform: translate(0,30px);
 -webkit-transform: translate(0,30px);
}
.up {
 -webkit-animation-name: fadeUp;
 animation-name: fadeUp;
 animation-duration: 1s;
 animation-fill-mode: forwards;
 animation-timing-function: ease;
}

.delay01 { animation-delay: 0.5s;}
.delay02 { animation-delay: 1s;}

@-webkit-keyframes fadeUp {
 from {
  opacity: 0;
  transform: translate(0,30px);
  -webkit-transform: translate(0,30px);
 }
 to {
  opacity: 1;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
 }
}
@keyframes fadeUp {
 from {
  opacity: 0;
  transform: translate(0,30px);
  -webkit-transform: translate(0,30px);
 }
 to {
  opacity: 1;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
 }
}

@keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
@keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}

/*--------------------------------------------------------------------------
 btn
---------------------------------------------------------------------------*/
.txt-btn {
 padding: 35px 0 15px;
 display: inline-block;
 line-height: 1;
 color: #000;
 font-family: neue-haas-unica, sans-serif;
 font-size: 14px;
 font-weight: 400;
 font-style: normal;
 position: relative;
}
.txt-btn::after {
 content: "";
 width: 50px;
 height: 2px;
 background: #000;
 position: absolute;
 left: 0;
 bottom: 0;
 -moz-transition: all 0.4s ease-in-out;
 -webkit-transition: all 0.4s ease-in-out;
 -o-transition: all 0.4s ease-in-out;
 -ms-transition: all 0.4s ease-in-out;
 transition: all 0.4s ease-in-out;
}
a:hover .txt-btn::after { width: 100%;}
.txt-btn .material-icons { padding-left: 20px;}

.basic-btn {
 padding: 5px 24px !important;
 letter-spacing: 0.1em;
 line-height: 24px;
 color: #fff;
 font-size: 14px;
 font-weight: 500;
 -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
     -ms-transition: all 0.4s;
      -o-transition: all 0.4s;
         transition: all 0.4s;
 background: #037ADE !important;
 -webkit-border-radius: 17px;
         border-radius: 17px;
}
.basic-btn .material-icons {
  vertical-align: text-bottom;
  font-size: 24px;
}
a:hover .basic-btn { background: #1d1d1d !important;}

.back-btn {
 width: 300px;
 margin: 80px auto 0;
}
.back-btn a {
 display: block;
 text-align: center;
 line-height: 62px;
 font-size: 14px;
 background: #FFF;
 border: 1px solid #adadad;
 -webkit-border-radius: 32px;
         border-radius: 32px;
}
.back-btn a:hover {
 color: #000 !important;
 background: #efefef;
 border-color: #888;
}

.remodal .close {
 width: 90%;
 max-width: 290px;
 height: 60px;
 margin: 60px auto 45px;
 display: block;
 color: #FFF;
 font-size: 14px;
 font-weight: 500;
 background-color: #141414 !important;
 -webkit-border-radius: 30px;
         border-radius: 30px;
 position: relative;
 -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
     -ms-transition: all 0.4s;
      -o-transition: all 0.4s;
         transition: all 0.4s;
}
.remodal .close:hover { background-color: #000 !important;}
.remodal .close span {
 display: block;
 color: #FFF;
}
.remodal .close .icon {
 color: #FFF;
 position: absolute;
 margin-top: 0;
 margin-left: 0;
 width: 18px;
 height: 18px;
 left: 8px;
}
.remodal .close .icon::before {
 content: '';
 position: absolute;
 top: 10px;
 width: 18px;
 height: 1px;
 background-color: #FFF;
 -webkit-transform: rotate(-45deg);
         transform: rotate(-45deg);
}
.remodal .close .icon::after {
 content: '';
 position: absolute;
 top: 10px;
 width: 18px;
 height: 1px;
 background-color: #FFF;
 -webkit-transform: rotate(45deg);
         transform: rotate(45deg);
}

@media screen and (max-width: 1200px) {
 .txt-btn {
  padding: 30px 0 12px;
  font-size: 12px;
 }
 .txt-btn::after { width: 40px;}
 .txt-btn .material-icons { padding-left: 15px;}
 .remodal .close { margin: 45px auto 30px;}
 .back-btn {
  width: 280px;
  margin: 60px auto 0;
 }
 .back-btn a {
  line-height: 58px;
  font-size: 12px;
  -webkit-border-radius: 30px;
          border-radius: 30px;
 }
}
@media screen and (max-width: 768px) {
 .txt-btn {
  padding: 25px 0 5px;
  font-size: 10px;
 }
 .txt-btn::after {
  width: 100% !important;
  height: 1px;
 }
 .txt-btn .material-icons { padding-left: 10px;}
 .more-btn { margin: 35px auto 0;}
 .more-btn a .material-icons { right: 15px;}
 .remodal .close {
  height: 48px;
  margin: 30px auto 20px;
  font-size: 12px;
  -webkit-border-radius: 24px;
          border-radius: 24px;
 }
}

/*--------------------------------------------------------------------------
 dress-list
---------------------------------------------------------------------------*/
#dresses { padding: 0 6.666%;}
.dress-list {
 display: flex;
     -webkit-flex-wrap: wrap;
         -ms-flex-wrap: wrap;
             flex-wrap: wrap;
}
.dress-list li {
 padding-top: 60px;
 max-width: 22.5%;
 -webkit-flex: 0 1 22.5%;
     -ms-flex: 0 1 22.5%;
         flex: 0 1 22.5%;
 margin-left: 3.333%;
}
.dress-list li:nth-child(4n+1) { margin-left: 0;}
.dress-list li figure { overflow: hidden;position: relative;}
.dress-list li a figure img {
 -moz-transition: all 0.4s ease-in-out;
 -webkit-transition: all 0.4s ease-in-out;
 -o-transition: all 0.4s ease-in-out;
 -ms-transition: all 0.4s ease-in-out;
 transition: all 0.4s ease-in-out;
}
.dress-list li a:hover figure img {
 opacity: 0.8;
 -webkit-transform: scale(1.05);
 -moz-transform: scale(1.05);
 -o-transform: scale(1.05);
 -ms-transform: scale(1.05);
 transform: scale(1.05);
}
.dress-list li a figure span {
  display: block;
  background: #333;
  padding: 10px;
  letter-spacing: 0.1em;
  font-size: 10px;
  color: #fff;
  position: absolute;
  right: 0;
  bottom: 0;
}
.dress-list li a .txt-wrap { padding-top: 25px;}
.dress-list li a .txt-wrap .brand-ja {
 line-height: 1;
 font-size: 11px;
 font-weight: 300;
 font-feature-settings : "palt";
}
.dress-list li a .txt-wrap .brand-en {
 padding-top: 0.3em;
 letter-spacing: 0.04em;
 line-height: 1.33;
 font-family: neue-haas-unica, sans-serif;
 font-size: 18px;
 font-weight: 500;
 font-style: normal;
 position: relative;
}
.dress-list li a .txt-wrap .desc {
 padding-top: 1em;
 line-height: 1.8;
 font-size: 12px;
 opacity: 0.5;
}
.dress-list li a .txt-wrap .name {
 letter-spacing: 0.04em;
 line-height: 1.33;
 font-family: neue-haas-unica, sans-serif;
 font-size: 18px;
 font-weight: 500;
 font-style: normal;
 position: relative;
}
.dress-list li a .txt-wrap .name.ja {
 letter-spacing: 0.16em;
 font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
 font-size: 17px;
 font-weight: 600;
 font-feature-settings : "palt";
}
.dress-list li a .txt-wrap .brand-small {
 padding-top: 0.33em;
 letter-spacing: 0.04em;
 line-height: 1.33;
 font-family: neue-haas-unica, sans-serif;
 font-size: 13px;
 font-weight: 300;
 font-style: normal;
 position: relative;
}


@media screen and (max-width: 1200px) {
 .dress-list li { padding-top: 50px;}
 .dress-list li a .txt-wrap { padding-top: 20px;}
 .dress-list li a .txt-wrap .brand-ja { font-size: 9px;}
 .dress-list li a .txt-wrap .brand-en { font-size: 14px;}
 .dress-list li a .txt-wrap .desc { font-size: 10px;}
 .dress-list li a .txt-wrap .name { font-size: 16px;}
 .dress-list li a .txt-wrap .name.ja { font-size: 15px;}
 .dress-list li a .txt-wrap .brand-small { font-size: 11px;}
}
@media screen and (max-width: 768px) {
 .dress-list li {
  padding-top: 40px;
  max-width: 47.5%;
  -webkit-flex: 0 1 47.5%;
      -ms-flex: 0 1 47.5%;
          flex: 0 1 47.5%;
  margin-left: 5%;
 }
 .dress-list li:nth-child(-n+2) { padding-top: 25px;}
 .dress-list li:nth-child(4n+1) { margin-left: 5%;}
 .dress-list li:nth-child(2n+1) { margin-left: 0;}
 .dress-list li a .txt-wrap { padding-top: 15px;}
 .dress-list li a .txt-wrap .brand-ja { font-size: 8px;}
 .dress-list li a .txt-wrap .brand-en { font-size: 13px;}
 .dress-list li a .txt-wrap .desc {
  line-height: 1.66;
  font-size: 9px;
 }
 .dress-list li a .txt-wrap .name { font-size: 14px;}
 .dress-list li a .txt-wrap .name.ja { font-size: 13px;}
 .dress-list li a .txt-wrap .brand-small { font-size: 10px;}
}

/*--------------------------------------------------------------------------
 page-title
---------------------------------------------------------------------------*/
#page-title {
 padding: 60px 6.666% 0;
 text-align: center;
 position: relative;
 background-color: #fff;
}
#page-title .en {
 padding-bottom: 1em;
 letter-spacing: 0.04em;
 line-height: 1;
 font-family: neue-haas-unica, sans-serif;
 font-size: 16px;
 font-style: italic;
 font-weight: 200;
}
#page-title .ja {
 line-height: 1;
 letter-spacing: 0.1em;
 font-size: 34px;
 font-feature-settings : "palt";
}
#page-title .en-name {
 letter-spacing: 0.04em;
 line-height: 1.33;
 font-family: neue-haas-unica, sans-serif;
 font-size: 28px;
 font-weight: 500;
}
#page-title .ja-name {
  padding-top: 0.75em;
 line-height: 1;
 letter-spacing: 0.16em;
 font-size: 12px;
 font-weight: 300;
 font-feature-settings : "palt";
}
#page-title .ja::after {
 content: "";
 width: 50px;
 height: 1px;
 margin: 25px auto;
 display: block;
 background-color: #000;
 opacity: 0.3;
}
#page-title .ja-name::after {
 content: "";
 width: 1px;
 height: 40px;
 margin: 25px auto;
 display: block;
 background-color: #000;
 opacity: 0.3;
}
#page-title h2 {
 letter-spacing: 0.3em;
 line-height: 1.75;
 font-size: 14px;
 font-weight: 300;
 font-feature-settings : "palt";
}
#page-title h2 + p {
 max-width: 700px;
 margin: 0 auto;
 text-align: justify;
 letter-spacing: 0.16em;
 line-height: 2;
 font-size: 13px;
 font-feature-settings : "palt";
}

@media screen and (max-width: 1200px) {
 #page-title { padding: 40px 6.666% 0;}
 #page-title .en { font-size: 12px;}
 #page-title .ja { font-size: 28px;}
 #page-title .en-name { font-size: 22px;}
 #page-title .ja-name { font-size: 11px;}
 #page-title .ja::after {
  width: 40px;
  margin: 20px auto;
 }
 #page-title .ja-name::after {
  height: 30px;
  margin: 20px auto;
 }
 #page-title h2 { font-size: 13px;}
 #page-title h2 + p { font-size: 11px;}
}
@media screen and (max-width: 768px) {
 #page-title { padding: 40px 6.666% 0;}
 #page-title .en { font-size: 10px;}
 #page-title .ja { font-size: 24px;}
 #page-title .en-name { font-size: 20px;}
 #page-title .ja-name { font-size: 10px;}
 #page-title .ja::after {
  width: 30px;
  margin: 15px auto;
 }
 #page-title .ja-name::after { margin: 15px auto;}
 #page-title h2 {
  letter-spacing: 0.24em;
  font-size: 12px;
 }
 #page-title h2 + p { font-size: 10px;}
}

/*--------------------------------------------------------------------------
 line-select
---------------------------------------------------------------------------*/
#line-select {
 margin-top: 120px;
 padding: 120px 0 45px;
 position: relative;
}
#line-select::after {
 content: "";
 width: 100%;
 height: 6px;
 border-top: 1px solid #dfdfdf;
 border-bottom: 1px solid #dfdfdf;
 position: absolute;
 left: 0px;
 top: 0;
}
#line-select .container {
 width: 100%;
 max-width: 960px;
 margin: auto;
 position: relative;
}
#line-select .container .swiper-button-next { right: -100px;}
#line-select .container .swiper-button-prev { left: -100px;}
#line-select .container .swiper-pagination.swp01 { bottom: -45px;}
#line-select .line-swp {
 overflow: hidden;
 -webkit-box-shadow: 20px 20px 60px rgba(0, 0, 0, .07);
 -moz-box-shadow: 20px 20px 60px rgba(0, 0, 0, .07);
 -ms-box-shadow: 20px 20px 60px rgba(0, 0, 0, .07);
 box-shadow: 20px 20px 60px rgba(0, 0, 0, .07);
}
#line-select .line-swp ul li { width: 100%;}
#line-select .line-swp ul li a {
 background: #FFF;
 display: flex;
 -webkit-align-items: center;
         align-items: center;
 -webkit-justify-content: space-between;
         justify-content: space-between;
}
#line-select .line-swp ul li a figure {
 max-width: 50%;
 -webkit-flex: 0 1 50%;
     -ms-flex: 0 1 50%;
         flex: 0 1 50%;
 display: block;
 overflow: hidden;
}
#line-select .line-swp ul li a img {
 -moz-transition: all 0.4s ease-in-out;
 -webkit-transition: all 0.4s ease-in-out;
 -o-transition: all 0.4s ease-in-out;
 -ms-transition: all 0.4s ease-in-out;
 transition: all 0.4s ease-in-out;
}
#line-select .line-swp ul li a:hover figure img {
 opacity: 0.8;
 -webkit-transform: scale(1.02);
 -moz-transform: scale(1.02);
 -o-transform: scale(1.02);
 -ms-transform: scale(1.02);
 transform: scale(1.02);
}
#line-select .line-swp ul li a .txt-wrap {
 max-width: 50%;
 -webkit-flex: 0 1 50%;
     -ms-flex: 0 1 50%;
         flex: 0 1 50%;
 text-align: center;
}
#line-select .line-swp ul li a .txt-wrap .en {
 padding-bottom: 1em;
 letter-spacing: 0.04em;
 line-height: 1;
 font-family: neue-haas-unica, sans-serif;
 font-size: 14px;
 font-style: italic;
 font-weight: 200;
}
#line-select .line-swp ul li a .txt-wrap h3 {
 line-height: 1;
 letter-spacing: 0.1em;
 font-size: 28px;
 font-feature-settings : "palt";
}
#line-select .line-swp ul li a .txt-wrap h3::after {
 content: "";
 width: 40px;
 height: 1px;
 margin: 22px auto;
 display: block;
 background-color: #000;
 opacity: 0.3;
}
#line-select .line-swp ul li a .txt-wrap h4 {
 letter-spacing: 0.3em;
 line-height: 1.8;
 font-size: 14px;
 font-weight: 300;
 font-feature-settings : "palt";
}
#line-select .txt-btn::after { width: 100%;}


@media screen and (min-width: 769px) {
 #line-select .swiper-button-prev,
 #line-select .swiper-button-next,
 #brand-select .swiper-button-prev,
 #brand-select .swiper-button-next {
  width: 40px;
  height: 40px;
  margin-top: 0;
  -webkit-background-size: 8px auto;
       -o-background-size: 8px auto;
          background-size: 8px auto;
  background-color: #FFF;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  border: 1px solid #adadad;
  -webkit-border-radius: 50%;
          border-radius: 50%;
 }
}

@media screen and (max-width: 1200px) {
 #line-select {
  margin-top: 90px;
  padding: 90px 0 45px;
  position: relative;
 }
 #line-select .container { max-width: initial;}
 #line-select .line-swp {
  width: 80%;
  max-width: 960px;
  margin: 0 auto;
 }
 #line-select .container .swiper-button-next { right: 10px;}
 #line-select .container .swiper-button-prev { left: 10px;}
}
@media screen and (max-width: 768px) {
 #line-select {
  margin-top: 70px;
  padding: 70px 0 40px;
  overflow: hidden;
 }
 #line-select::after {
  width : 86.666%;
  height: 4px;
  left: 6.666%;
 }
 #line-select .container {
  width: 100%;
 }
 #line-select .line-swp {
  width: 100%;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
  overflow: visible;
 }
 #line-select .container .swiper-button-next {
  top: auto;
  bottom: 90px;
  right: 15px;
 }
 #line-select .container .swiper-button-prev {
  top: auto;
  bottom: 90px;
  left: 15px;
 }
 #line-select .container .swiper-pagination.swp01 { bottom: -40px;}
 #line-select .line-swp ul li {
  width: 100%;
  padding: 0 6.666%;
 }
 #line-select .line-swp ul li a { display: block;}
 #line-select .line-swp ul li a figure { max-width: initial;}
 #line-select .line-swp ul li a .txt-wrap {
  width: 86.666%;
  margin: -60px auto 0;
  padding: 30px 25px;
  max-width: initial;
  text-align: center;
  background: #FFF;
  position: relative;
  -webkit-box-shadow: 10px 10px 30px rgba(0, 0, 0, .1);
  -moz-box-shadow: 10px 10px 30px rgba(0, 0, 0, .1);
  -ms-box-shadow: 10px 10px 30px rgba(0, 0, 0, .1);
  box-shadow: 10px 10px 30px rgba(0, 0, 0, .1);
 }
 #line-select .line-swp ul li a .txt-wrap .en { font-size: 10px;}
 #line-select .line-swp ul li a .txt-wrap h3 { font-size: 20px;}
 #line-select .line-swp ul li a .txt-wrap h3::after {
  width: 30px;
  margin: 15px auto;
 }
 #line-select .line-swp ul li a .txt-wrap h4 {
  letter-spacing: 0.2em;
  font-size: 11px;
 }
 #line-select .line-swp ul li a .txt-wrap h4 + p { display: none;}
}

/*--------------------------------------------------------------------------
 brand-select
---------------------------------------------------------------------------*/
#brand-select { padding: 120px 0 0;}
#brand-select .container {
 max-width: 1240px;
 margin: 0 auto;
 position: relative;
}
#brand-select .container .swiper-button-next { right: -80px;}
#brand-select .container .swiper-button-prev { left: -80px;}
#brand-select .brand-swp { overflow: hidden;}
#brand-select .brand-swp ul li {
 width: 25%;
 padding: 0 1.666%;
}
#brand-select .brand-swp ul li figure { overflow: hidden;position: relative;}

#brand-select .brand-swp ul li figure span {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #333;
  color: #fff;
  line-height: 2;
  font-size: 10px;
  vertical-align: middle;
  font-weight: normal;
  padding: 2px 6px;
  display: inline-block;
}
#brand-select .brand-swp ul li a figure img {
 -moz-transition: all 0.4s ease-in-out;
 -webkit-transition: all 0.4s ease-in-out;
 -o-transition: all 0.4s ease-in-out;
 -ms-transition: all 0.4s ease-in-out;
 transition: all 0.4s ease-in-out;
}
#brand-select .brand-swp ul li a:hover figure img {
 opacity: 0.8;
 -webkit-transform: scale(1.05);
 -moz-transform: scale(1.05);
 -o-transform: scale(1.05);
 -ms-transform: scale(1.05);
 transform: scale(1.05);
}
#brand-select .brand-swp ul li a .txt-wrap { padding-top: 25px;}
#brand-select .brand-swp ul li a .txt-wrap .brand-ja {
 line-height: 1;
 font-size: 11px;
 font-weight: 300;
 font-feature-settings : "palt";
}
#brand-select .brand-swp ul li a .txt-wrap .brand-en {
 padding-top: 0.5em;
 letter-spacing: 0.04em;
 line-height: 1.33;
 font-family: neue-haas-unica, sans-serif;
 font-size: 18px;
 font-weight: 500;
 font-style: normal;
 position: relative;
 vertical-align: middle;
}

#brand-select .brand-swp ul li a .txt-wrap .desc {
 padding-top: 1em;
 line-height: 1.8;
 font-size: 12px;
 opacity: 0.5;
}
#brand-select .brand-swp ul li a .txt-wrap .name {
 letter-spacing: 0.04em;
 line-height: 1;
 font-family: neue-haas-unica, sans-serif;
 font-size: 18px;
 font-weight: 500;
 font-style: normal;
 position: relative;
}
#brand-select .brand-swp ul li a .txt-wrap .brand-small {
 padding-top: 0.33em;
 letter-spacing: 0.04em;
 line-height: 1.33;
 font-family: neue-haas-unica, sans-serif;
 font-size: 13px;
 font-weight: 300;
 font-style: normal;
 position: relative;
}

@media screen and (max-width: 1200px) {
 #brand-select { padding: 90px 0 0;}
 #brand-select .container { padding: 0 4.5%;}
 #brand-select .container .swiper-button-next { right: 10px;}
 #brand-select .container .swiper-button-prev { left: 10px;}
 #brand-select .brand-swp ul li a .txt-wrap { padding-top: 20px;}
 #brand-select .brand-swp ul li a .txt-wrap .brand-ja { font-size: 9px;}
 #brand-select .brand-swp ul li a .txt-wrap .brand-en { font-size: 14px;}
 #brand-select .brand-swp ul li a .txt-wrap .desc { font-size: 10px;}
 #brand-select .brand-swp ul li a .txt-wrap .name { font-size: 16px;}
 #brand-select .brand-swp ul li a .txt-wrap .brand-small { font-size: 11px;}
}
@media screen and (max-width: 768px) {
 #brand-select { padding: 70px 0 0;}
 #brand-select .container { padding: 0 6.666%;}
 #brand-select .container .swiper-button-next {
  top: 27.2vw;
  right: 15px;
 }
 #brand-select .container .swiper-button-prev {
  top: 27.2vw;
  left: 15px;
 }
 #brand-select .brand-swp ul li {
  width: 50%;
  padding: 0 0 0 5%;
 }
 #brand-select .brand-swp ul li a .txt-wrap { padding-top: 15px;}
 #brand-select .brand-swp ul li a .txt-wrap .brand-ja { font-size: 8px;}
 #brand-select .brand-swp ul li a .txt-wrap .brand-en { font-size: 13px;}
 #brand-select .brand-swp ul li a .txt-wrap .desc { display: none;}
 #brand-select .brand-swp ul li a .txt-wrap .name { font-size: 14px;}
 #brand-select .brand-swp ul li a .txt-wrap .brand-small { font-size: 10px;}
}

/*--------------------------------------------------------------------------
 links
---------------------------------------------------------------------------*/
#links { padding: 150px 6.666% 0;}
#links a {
 width: 100%;
 max-width: 640px;
 margin: 0 auto;
 padding: 15px;
 display: flex;
 -webkit-align-items: center;
         align-items: center;
 background: #FFF;
 -webkit-filter:drop-shadow(10px 10px 30px rgba(0, 0, 0, 0.1));
 -moz-filter:drop-shadow(10px 10px 30px rgba(0, 0, 0, 0.1));
 -ms-filter:drop-shadow(10px 10px 30px rgba(0, 0, 0, 0.1));
 filter:drop-shadow(10px 10px 30px rgba(0, 0, 0, 0.1));
 will-change: filter;
 border: 1px solid #FFF;
}
#links a:hover {
 -webkit-filter: none;
 -moz-filter: none;
 -ms-filter: none;
 filter: none;
 border-color: #dfdfdf;
}
#links a figure {
 max-width: 36.333%;
 -webkit-flex: 0 1 36.333%;
     -ms-flex: 0 1 36.333%;
         flex: 0 1 36.333%;
}
#links a .txt-wrap {
 max-width: 73.666%;
 padding: 0 0 0 8%;
 -webkit-flex: 0 1 73.666%;
     -ms-flex: 0 1 73.666%;
         flex: 0 1 73.666%;
}
#links a .txt-wrap .en {
 padding-bottom: .75em;
 letter-spacing: 0.04em;
 line-height: 1;
 font-family: neue-haas-unica, sans-serif;
 font-size: 14px;
 font-style: italic;
 font-weight: 200;
}
#links a .txt-wrap h3 {
 line-height: 1.5;
 letter-spacing: 0.3em;
 font-size: 20px;
 font-feature-settings : "palt";
}
@media screen and (max-width: 1200px) {
 #links { padding: 90px 6.666% 0;}
 #links a .txt-wrap .en { font-size: 12px;}
 #links a .txt-wrap h3 { font-size: 18px;}
}
@media screen and (max-width: 768px) {
 #links { padding: 70px 6.666% 0;}
 #links a { padding: 10px;}
 #links a .txt-wrap .en { font-size: 9px;}
 #links a .txt-wrap h3 { font-size: 15px;}
 #links a .txt-wrap .txt-btn { display: none;}
}
