html {
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}
html{
  /*
  transform: translate3d(0,0,0);
  */
}
.tablet_only{
	display:none;
}
.top--fix__box{
  background:#000000;
  left:0;
  bottom: 0;
  z-index:10;
  position:fixed;
  width: 100%;
  font-weight: bold;
  font-size: .18rem;
  display: none;
  opacity: 0;
}
.top--fix__box p{
text-align: center;
color:#fff;
}

.top--fix__box .sankaku {
  position: relative;
  display: flex;
  justify-content: center;
  padding-right: 20px;
  text-align: center;
  text-decoration: none;
  height: 50px;
  align-items: center;
}
.top--fix__box .sankaku::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #ffffff;
  position: absolute;
  top: 50%;
  right: 20px;
  /* margin-top: -6px; */
}

.lity-close {
font-size: 0;
background-image: url(../images/x.svg);
background-size: cover;
background-repeat: no-repeat;
right: 60px;
top: 30px;
width: 39px;
height: 21px;
}
.lity-close:hover, .lity-close:focus, .lity-close:active, .lity-close:visited {
  font-size: 0;
  background-image: url(../images/x.svg);
  background-size: cover;
  background-repeat: no-repeat;
  right: 60px;
  top: 30px;
  width: 39px;
  height: 21px;
}


header {
  position: absolute;
  top: 0;
  z-index: 11;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 12px 80px 12px 80px;
  background-color: #fff;
}
.top-logo{
  opacity: 0;
}
.top-logo>a img {
  width: 228px;
}

.top-contact>a {
  background-color: #000;
  border: solid 1px #000;
  color: #fff;
  border-radius: 25px;
  font-size: .14rem;
  font-weight: bold;
  padding: 5px 45px 5px 25px;
  margin-right: 72px;  
}

.top-contact>a:hover{
  background-color: #fff;
  color: #000;
  border: solid 1px #000;
  opacity: 1;
}

.sankaku {
  position: relative;
  display: inline-block;
  padding-left: 12px;
  color: #000000;
  text-decoration: none;
}

.sankaku::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #ffffff;
  position: absolute;
  top: 50%;
  right: 8%;
  margin-top: -6px;
}

.sankaku:hover::after{
  filter: brightness(0);
}

.commentary a:hover{
  background-color: #fff;
  color: #000;
  border: solid 1px #000;
  opacity: 1;
}


#toggle {
  position: fixed;
  top: 26px;
  right: 70px;
  transform: translate3d(0,0,0);
  opacity:0;
}

#toggle-box {
  position: relative;
  width: 40px;
  height: 25px;
  cursor: pointer;
}

#toggle-box>span {
  width: 100%;
  height: 3px;
  left: 0;
  display: block;
  background: #000;
  position: absolute;
  transition: transform .6s ease-in-out, top .5s ease, bottom .5s ease;
}

#toggle-box>span:nth-child(1) {
  top: 5%;
}

#toggle-box>span:nth-child(2) {
  top: 50%;
  transform: translatey(-50%);
}

#toggle-box>span:nth-child(3) {
  bottom: 3%;
}

#toggle {
  z-index: 1000;
}

#main {
  position: relative;
  z-index: 990;
}

#nav-content {
  z-index: 900;
  overflow: auto;
    max-width: 400px;
    width: 90%;
  height: 100%;
  background: #fff;
  color: #000;
  position: fixed;
  top: 0;
  right: 0;
  text-align: center;
  transform: translateX(100%);
  transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#nav-content ul {
  list-style: none;
}

#nav-content a {
    display: block;
    color: #000;
    font-size: .18rem;
    font-weight: bold;
    text-decoration: none;
    padding: 30px 0;
    transition: opacity .6s ease;
}

#nav-content a:hover {
  opacity: 0.6;
}

.is-open {
  overflow: hidden;
}

.is-open #toggle-box>span {
  background: #000;
}

.is-open #toggle-box>span:nth-child(1) {
  top: 50%;
  transform: rotate(45deg) translatey(-50%);
}

.is-open #toggle-box>span:nth-child(2) {
  width: 0;
}

.is-open #toggle-box>span:nth-child(3) {
    top: 51%;
    transform: rotate(-45deg) translatey(-50%);
    left: 1px;
}
.is-open #nav-content {
    z-index: 999;
    transform: translateX(0);
    max-width: 400px;
    width: 90%;
}




.hamburger {
  font-size: .20rem;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
}

#nav-content ul li:nth-child(1) {
    margin-top: 100px;
}


/* アニメーション */
.c-loader-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  z-index: 100;
  place-items: center;
  pointer-events: none;
  z-index:111;
}
.c-loader-bg> div{
  width: 800px;
  max-width:100%;
  position: absolute;
  top: 46%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-loader-bg img{
  width: 225px;
  margin: 0 auto 50px;
  display: block;
  animation-name: fade;
  animation-duration: 1.5s;
  animation-iteration-count: １;
  animation-fill-mode: forwards;
}

.c-loader-bg p{
  font-weight: bold;
  font-size: .40rem;
  text-align: center;
  color: #000;
  animation-name: fade;
  animation-duration: 1.5s;
  animation-iteration-count: １;
  animation-fill-mode: forwards;
}

@keyframes fade{
  0%{
    opacity: 0;
  }
  40%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}

.c-loader-bg p span{
    letter-spacing: -.6em;
}

.brown{

}




.harf01-img {
  width: 55%;
}


.harf {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  color: #fff;
  position: relative;
}


.statement .harf01 {
  width: 45%;
}
.statement .harf01>div {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 1120px;
  z-index: 2;
  height: fit-content;
}
.statement .harf01 p:nth-of-type(1) {
  	font-weight: bold;
    font-size: .26rem;
    margin-bottom: 5px;
}

.statement .harf01 p:nth-of-type(2) {

  font-weight: bold;
  font-size: .24rem;
  line-height: 3.4;
}

/* .harf01{
  position: relative;
} */
.timelessdesign {
  background-image: url(../images/timeless_back.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.tomrrow-stechnology {
  background-image: url(../images/tomorrow_back.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

.timelessdesign .harf01,
.tomrrow-stechnology .harf01 {
  padding-bottom: 46%;
}

.timelessdesign .harf01>div,
.tomrrow-stechnology .harf01>div {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 1120px;
  height: fit-content;
  z-index: 2;
}

.tomrrow-stechnology .harf01>div{
    transform: translateX(610px);
}

.harf h2,
.harf h2 {
  font-size: .60rem;
  font-weight: bold;
  z-index: 1;
  line-height: 1.2;
  margin-bottom: 50px;
}


.timelessdesign .harf01>p,
.tomrrow-stechnology .harf01>p {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
  font-size: 1.20rem;
  z-index: 1;
  opacity: 0.1;
  line-height: 0.9;
}
.tomrrow-stechnology .harf01>p {
    left: auto;
    bottom: 0;
    top: auto;
    right: 0;
    text-align: right;
}

.timelessdesign .harf01>div p,
.tomrrow-stechnology .harf01>div p {
  font-weight: bold;
  font-size: .20rem;
  width: 53%;
  max-width: 500px;
  z-index: 1;
}

.timelessdesign .harf h3,
.tomrrow-stechnology .harf h3 {
  font-size: .44rem;
  font-weight: bold;
  z-index: 1;
  line-height: 1.2;
  margin-bottom: 50px;
}

.timelessdesign .harf img,
.timelessdesign .harf img {
  width: 50%;
  clip-path: polygon(30% 0%, 100% 0%, 100% 100%, 0% 100%);
    /* clip-path: polygon(頂点Aの座標,頂点Bの座標,頂点Cの座標,頂点Dの座標) */
  object-fit: cover;
}

.harf02 {
  width: 440px;
  height: 268px;
  border-top: 435px solid #000000;
  border-right: 160px solid transparent;
  box-sizing: border-box;

}


.harf img {
  width: 100%;
  clip-path: polygon(45% 0%, 100% 0%, 100% 100%, 10% 100%);
    /* clip-path: polygon(頂点Aの座標,頂点Bの座標,頂点Cの座標,頂点Dの座標) */
  object-fit: cover;
  min-height: 100vh; /* Fallback */
}


.features,
.lineup,
.top--news {
  font-weight: bold;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-evenly;
  width: 1126px;
  max-width: 100%;
  line-height: 1.2;
  padding: 110px 0;
  align-items: center;
  margin: 0 auto;
}

.features {
  justify-content: flex-end;
}

.top--news {
  justify-content: flex-end;
    margin: 0px auto -10px;
}

.lineup {
  justify-content: flex-start;
}
.bicycle--wallpaper {
    overflow: hidden;
    height: 35vw;
}


.features p,
.lineup p,
.top--news p {
    font-size: .26rem;
  margin-bottom: 115px;
  padding-right: 40px;
}
.lineup p,
.top--news p{
    margin-bottom: 100px;
}
.features h2 {
  font-size: .72rem;
}

.char {
  transform: translateY(100px);
  transition: transfrom 0.5s;
  /* transform: translateY(-100px); テキストを上から出したい時*/
}

.top--news h2,
.lineup h2 {
  font-size: .60rem;
}


.cruiser_top-container{
  margin:120px auto;
}


.message {
  font-size: .60rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
  padding: 90px 0;
}

.cruiser--top__container {
  margin: 50px 0;
}

.cruiser--spec, .ringo--spec {
    display: flex;
    /* flex-wrap: wrap; */
    justify-content: space-between;
    font-size: .20rem;
    margin: 0 auto;
    width: 1126px;
    max-width: 100%;
    align-items: center;
	left:0 !important;
	right:0 !important;
	margin:auto !important;
}
.cruiser_top-container .pin-spacer,
.ringo_top-container .pin-spacer {
	margin: 0 auto !important;
}
.cruiser--logo__text,
.ringo--logo__text {
    width: 300px;
	opacity:0;
}

.cruiser--logo__text h3 p,
.ringo--logo__text h3 p {
  font-weight: normal;
}


.cruiser--spec>div>div p,
.ringo--spec>div>div>p {
  font-weight: bold;
  margin: 20px 0;
}

.cruiser--spec>div>div a,
.ringo--spec>div>div a {
    background-color: #000;
    border: solid 1px #000;
    color: #fff;
    border-radius: 25px;
    font-size: .16rem;
    font-weight: bold;
    padding: 6px 60px 8px 60px;
}

.cruiser--spec>div>div a:hover,
.ringo--spec>div>div a:hover{
  color:#000 ;
  background-color: #fff;
  border: solid 1px #000;
  opacity: 1;
} 


.cruiser__img,
.ringo__img {
    display: flex;
    align-items: center;
	width: calc(100% - 343px + ((100vw - 1126px) / 2));
	margin-left: calc((100vw - 1126px) / -2);
  /*
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  transform: translate(0px, 0px);
  */
  /*
  width: calc(((100vw - 1120px) / 2) + 73%);
  transform: translateX(-200%);
  */
}




.cruiser--spec div>h3>img,
.ringo--spec div>h3>img {
  width: 340px;
}


.item-container h3{
    padding-top: 28px;
}


.item-container h3 img {
  width: 50%;
  margin: 0 auto;
}

.item-container h3 p {
  text-align: center;
  font-size: .20rem;
  color: #000;
  font-weight: normal;
  margin-top: 10px;
}


.ringo_top-container {
  background-color: #F2F2F2;
  padding-bottom: 120px;
}



.content {
  display: flex;
  width: 100%;
  margin: 100px auto;
}

.content .left {
  width: 35%;
  position: relative;
  background-color: black;
  color: #fff;
}

/*
  疑似要素（before）で白いボックスを作り画像の上に重ねる
  「transform: skewX(-18deg);」で角度をつけて平行四辺形にする
  positionとrightで画像の上に重ねる
  */
.content .left::before {
  content: "";
  width: 484px;
  height: 100%;
  background: #000;
  position: absolute;
  right: -400px;
  transform: skewX(-18deg);
}

.content .left .text-area {
  position: absolute;
  top: 60px;
  left: 60px;
}

.content .left .title {
  line-height: 1;
  margin-bottom: 56px;
}

/*
  「display: block;」を設定することで、
  改行されてmargin-bottomが効くようになる。
  ※spanタグはデフォルトではinlineのため、
  改行もされないしmargin-bottomも効かない
  */
.content .left .title .en {
  display: block;
  font-size: .18rem;
  font-weight: bold;
  margin-bottom: 12px;
}

.content .left .title .ja {
  display: block;
  font-size: .12rem;
}

.content .left .copy {
  font-size: .12rem;
}

.content .right {
  width: 65%;
}

/*
  「vertical-align: bottom;」で画像の下にできる隙間を消す
  「object-fit: cover;」で高さを500pxで固定したままトリミングする
  ※「object-fit」はIEでは正しく動作しないため注意が必要
  */
.content .right img {
  width: 66%;
  height: 500px;
  object-fit: cover;
  margin: 0 0 0 auto;
  display: block;
}


.slick__item {
  margin-right: 3px;
  margin-left: 3px;
  margin-top: 2px;
  margin-bottom: 2px;
  overflow: hidden;
}

@media (min-width: 701px) {
.slick__item img {
  transform: scale(1);
  transition: .3s ease-in-out;
}
.slick__item:hover img {
  transform: scale(1.3);
}
}







.slider img {
  width: 100%;
}

.slider .slick-slide {
  height: auto !important;
}

.slider .slick-arrow {
  z-index: 2 !important;
}


.slider .slick-arrow:before {
  font-size: 50px;
}



/* ドットの位置を調整 */
.slider .slick-dots {
  width: 50px;
  right: 0;
  bottom: initial;
  top: 50%;
  transform: translateY(-50%);
}



aside > div >p   {
  text-align: center;
  font-weight: normal;
  padding-bottom: 25px;
}


aside {
  background-color: #fff;
  width: 960px;
  max-width: 100%;
  font-size: .16rem;
  padding-bottom: 80px;
}

aside small{
  color: #9D9D9D;
}

aside> div > div{
  overflow: scroll;
  height: 300px;
  width: 720px;
  max-width: 100%;
  margin: 0 auto;
}

.spec--popup__table th{
  width: 215px;
  max-width: 100%;
  font-weight: bold;

}

.p40_bottom{
  padding-bottom: 40px;
}  
.spec--popup__table th{
  width: 215px;
  max-width: 100%;
  font-weight: bold;
  text-align: left;
}

.spec--popup__table td {
  width: 215px;
  max-width: 100%;
  font-weight: normal;
  padding: 10px 0;
}

.spec--popup__table td p {
  margin: 10px 0;

}

.spec--popup__table tr {
  border-bottom: solid 1px #F0F0F0;
  text-align: center;
  width: 680px;
  max-width: 100%;
  margin: 0 auto;
  padding: 10px 0;
}

aside img {
  width: 175px;
  display: block;
  margin: 0 auto;
  padding: 65px 0 30px;
}

.trino--spec__popup img{
  width: 291px;
}

.ambassador--spec__popup img {
  width: 401px;
}

.clubman--spec__popup img {
  width: 303px;
}
.beachin--spec__popup img{
  width: 268px;
}
.the_trixie--spec__popup img{
  width: 430px;
}


.one-line td{
  letter-spacing: -0.001em;
}


.popup--sp_only{
  display: none;
}


.sp-slide img{
    transform: scale(1);
    transition: .3s ease-in-out;
    overflow: hidden;
  }
  .sp-slide:hover img {
    transform: scale(1.1);
  }



.slider {
  position: relative;
  max-width: 1120px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  /*
  position: absolute;
  transform: translateX(-340px);
  */
}

.slider--cruiser,
.slider--ringo{
  margin-top:120px;
}

.slider img {
  max-width: 100%;
  height: auto;
  margin: 0;
}

.slider .slider-nav-wrap {
  position: relative;
}

.slider .slider-nav-wrap .slider-nav .slick-list,
.slider .slider-nav-wrap .slider-nav02 .slick-list {
  padding: 0 !important;
}

.slider .slider-nav-wrap .slider-nav .slick-track,
.slider .slider-nav-wrap .slider-nav02 .slick-track {
  left: 0 !important;
  width: 100%;
  opacity: 1;
}

.slider .slider-nav-wrap .slider-nav .slick-slide,
.slider .slider-nav-wrap .slider-nav02 .slick-slide {
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease;
  opacity: 1;
  padding: 0 5px;
}

.slider .slider-nav-wrap .slider-nav .slick-slide:hover,
.slider .slider-nav-wrap .slider-nav02 .slick-slide:hover {
  opacity: .5;
}

/* .slider .slider-nav-wrap .slick-arrow {
  position: absolute;
  top: 50%;
  width: 0;
  border-style: solid;
} */

.slider .slider-nav-wrap .slick-next01,
.slider .slider-nav-wrap .slick-next02 {
  content: '';
  rotate: 90deg;
  position: absolute;
  top: -25px;
  right: 0;
  left: 0;
  margin: auto;
  border-bottom: solid 1px #000000;
  border-left: solid 1px #000000;
  width: 24px;
  height: 24px;
  transform: rotate(45deg);
}


.slider .slider-nav-wrap .slick-prev01,
.slider .slider-nav-wrap .slick-prev02 {
  content: '';
  rotate: 90deg;
  border-top: solid 1px #000000;
  border-right: solid 1px #000000;
  width: 24px;
  height: 24px;
  transform: rotate(45deg);
  position: absolute;
  bottom: -25px;
  right: 0;
  left: 0;
  margin: auto;
}

@media (min-width: 769px) {


  .slider .slider-for,
  .slider .slider-for02 {
    width: 77.5%;
  }

  /* サムネイル */
  .slider .slider-nav-wrap {
    width: 19.3%;
  }

  .slider .slider-nav-wrap .slider-nav .slick-list,
  .slider .slider-nav-wrap .slider-nav02 .slick-list {
    padding: 0 0 !important;
  }

  .slider .slider-nav-wrap .slider-nav .slick-track,
  .slider .slider-nav-wrap .slider-nav02 .slick-track {
    left: 0 !important;
  }

  .slider .slider-nav-wrap .slider-nav .slick-slide,
  .slider .slider-nav-wrap .slider-nav02 .slick-slide {
    padding: 0;
  }

  /* .slider .slider-nav-wrap .slick-arrow {
    left: 44%;
  } */

  /* .slider .slider-nav-wrap .slick-prev{
      top: auto;
      font-size: 0;
      bottom: -1.5em;
      border-width: 18px 9px 0 9px;
      border-color: #444444 transparent transparent transparent;
  }
  .slider .slider-nav-wrap .slick-next{
      top: -1.5em;
      font-size: 0;
      border-width: 0 9px 18px 9px;
      border-color: transparent transparent #444444 transparent;
  } */
}

.movie-scroll {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  min-width: 100%;
  min-height: 100%;
  pointer-events: none;
  /*
  will-change: transform;
  will-change: top, left, opacity, margin, padding, width, height, transform;
  */
}

#type04 {
    position: fixed;
    top: 74px;
    width: 100vw;
    min-height: 100vh; /* Fallback */
    min-height: calc((var(--vh, 1vh) * 100) - 74px) !important;
    overflow: hidden;
    z-index: 11;
    pointer-events: none;
}

.type a {
  display: inline-block;
  position: absolute;
  left: 5%;
  bottom: 23px;
  z-index: 2;
  padding: 10px 10px 110px;
  color: #fff;
  font-size: .21rem;
  font-weight: bold;
  font-family: 'Josefin Sans', sans-serif;
  line-height: 1;
    letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
  transition: .2s;
  overflow: hidden;
}
  .type a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 2px;
    /* 線の太さ */
    height: 100px;
    /* 線の長さ */
    background: #fff;
  }

  .type a:hover {
    opacity: .5;
  }


#type04 a::after {
  animation: sdl04 2s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes sdl04 {
  0% {
    opacity: 1;
    transform: scale(1, 0);
    transform-origin: 0 0;
  }

  30% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }

  30.1%,
  70% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }

  100% {
    opacity: 0;
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}




.scroll-area {
  overflow: hidden;

}

.scroll-wrap {
  display: flex;
  -webkit-overflow-scrolling: touch;
}

.sp-thumbnail {
  width: 90%;
}

.item {
  min-height: 100vh; /* Fallback */
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
}
.js-item01 h3 img {
  width: 218px;
} 

.js-item02 h3 img {
  width: 300px;
} 

.js-item03 h3 img {
  width: 227px;
} 
.js-item04 h3 img {
  width: 201px;
} 

.js-item05 h3 img {
  width: 322px;
} 

/* .empty-box {
  height: 100vh;
} */


.slider11 {
  margin: 30px auto 0;
  max-width: 500px;
  width: 100%;
}
@media (max-height: 900px) and (min-width:1000px) {
	.slider11 {
    	max-width: 500px;
    	width: 54%;
    	margin: 22px auto 0;
	}
	.item-container h3 p {
		font-size: .17rem;
    	margin-top: 8px;
	}
	.commentary a {
    	border-radius: 30px;
    	font-size: .17rem;
    	padding: 4px 55px 6px;
    	margin-top: 16px;
	}
	.slider11 {
    	margin: 20px auto 0;
	}
	.slick-dotted.slick-slider{
	    margin-bottom: 39px;
	}
}

button.slick-prev.slick-arrow {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;

  margin: auto;
  border-bottom: solid 1px #000000;
  border-left: solid 1px #000000;
  width: 24px;
  height: 24px;
  transform: rotate(45deg);
}


button.slick-next.slick-arrow {
  content: '';
  border-top: solid 1px #707070;
  border-right: solid 1px #707070;
  width: 24px;
  height: 24px;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}


.slick-dots2 li button {
  background: transparent;
  border: 0;
  font-size: 0pt;
}

.item-container {
  text-align: center;
  border-right: solid 1px #707070;
}
.commentary a {
    background-color: #000;
    color: #fff;
    border-radius: 30px;
    font-size: .16rem;
    font-weight: bold;
    padding: 6px 60px 8px 60px;
    margin-top: 16px;
}


.commentary p {
  color: black;
  width: 59%;
  margin: 0 auto;
  font-size: .16rem;
  font-weight: normal;
}

.slick-dots li button:before {
  font-size: 50px;
}

.inst--block {
  text-align: center;
}

.top--instagram__smn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
  width: 1126px;
  max-width: 100%;
  margin: 0 auto;
}

.top--instagram__smn>div {
    width: 30.4%;
    text-align: center;
}

.top--instagram__smn p {
  text-align: justify;
  font-size: .16rem;
  font-weight: normal;
  margin-top: 10px;
  line-height: 1.4;
}

.inst--block a.link--skip {
  background-color: #000;
  border: solid 1px #000;
  color: #fff;
  border-radius: 30px;
  font-size: .18rem;
  font-weight: bold;
  padding: 10px 30px 10px 60px;
  margin-top: 50px;
  margin: 40px auto 120px;

}

.inst--block a.link--skip:hover{
  background-color: #fff;
  color: #000;
  border: #000 solid 1px;
  opacity: 1;
}

.link--skip {
  position: relative;
  display: inline-block;
  padding-left: 12px;
  color: #333;
  text-decoration: none;
}

.link--skip::after {
  content: url(../images/quill_link-out.svg);
  display: inline-block;
  width: 5px;
  height: 5px;
  padding-left: 35px;
  padding-right: 5px;
}

.link--skip:hover::after{
  filter: brightness(0);
}

footer {
  background-color: #000;
  color: #fff;
}

.top--footer01 {
  background-image: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)), url(../images/footer-back.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 32vw;
  min-height: 440px;
  position: relative;
  color: #fff;
  text-align: center;
  padding-top: 100px;
}

.top--footer01 p {
  text-align: center;
  font-weight: bold;
}


.top--footer01 p:nth-of-type(1) {
  font-size: .26rem;
  font-weight: bold;
}

.top--footer01 p:nth-of-type(2) {
  font-size: .60rem;
}

.top--footer01 a {
  background-color: #fff;
  border: solid 1px #000;
  color: #000;
  border-radius: 30px;
  font-size: .20rem;
  font-weight: bold;
  padding: 7px 75px 7px 70px;
  margin-top: 20px;

}

.top--footer01 a:hover{
  color: #fff;
  background-color: #000;
  border: solid 1px #fff;
  opacity: 1;
}

.h-sankaku {
  position: relative;
  display: inline-block;
  padding-left: 12px;
  color: #000;
  text-decoration: none;
}

.h-sankaku::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #000;
  position: absolute;
  top: 50%;
  right: 5%;
  margin-top: -6px;
  
}
.h-sankaku:hover::after{
  border-color: transparent transparent transparent #fff;
}


.top--footer02 {
  background-color: #000;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 63px 0;
  font-size: .16rem;
  font-weight: bold;
  align-items: center;
  width: 1126px;
  max-width: 100%;
  margin: 0 auto;
}

.top--footer02 a {
  color: #fff;
}

.footer_nav {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
}
.footer-logo{
	width:240px;	
}
.footer-logo img {
  width: 100%;
}

footer>p {
  text-align: center;
  font-size: .14rem;
  font-weight: bold;
  padding-bottom: 20px;
}

.official-link li::after {
  content: url(../images/quill_link-out.svg);
  display: inline-block;
  width: 5px;
  height: 5px;
  padding-left: 5px;
}

.pc-img {
  display: block;
}

.sp-img {
  display: none;
}


.sp_only {
  display: none;
}
.sp_only_inline {
  display: none;
}
.popup--sp_only {
  display: none;
}


@media screen and (max-width: 1355px) {
  .top-contact>a {
    display: block;
  }

  .top-contact>a {
    align-items: inherit;
  }

}

@media screen and (max-width: 1040px) {

  .features,
  .lineup,
  .cruiser--spec,
  .ringo--spec,
  .top--news,
  .inst--block {
    padding: 0 20px;
  }
}

@media screen and (max-width: 900px) {
  #toggle {
		right: 30px;
		top: 25px;
  }
  .type a {
		bottom: 0;
		left: 25px;

		padding-bottom: 280px;/*キャンペーンcss*/
		padding-bottom: 174px;
		font-size: .18rem;
	}

	#type04 a::after {

		height: 270px;/*キャンペーンcss*/
		height: 150px;
  		z-index: 111;
	}
  .harf01-img {
		width: 100%;
		background: linear-gradient(180deg, #000 0%, #000 50%, #fff 50%, #fff 100%);
  }

  .statement .harf01>div {
    position: initial;
    padding: 0 20px;
  }

  .statement .harf01 p:nth-of-type(1) {
    top: 10px;
    left: 44px;
	font-size: .20rem;
  }

  .harf h2 {
    position: relative;
    font-size: .45rem;
  }

  .statement .harf01 p:nth-of-type(2) {
    line-height: 2.4;
    font-size: .18rem;
    width: 75%;
  }


  .harf img {
    width: 100%;
    clip-path: polygon(0% 13%, 100% 0%, 100% 87%, 0% 100%)
      /* clip-path: polygon(頂点Aの座標,頂点Bの座標,頂点Cの座標,頂点Dの座標) */
    ;

  }


  .harf01 {
    border-right: none;
  }

  .timelessdesign .harf h3 {
    position: initial;
  }

  .timelessdesign .harf01>div {
    position: initial;
    width: 100%;
  }

  .timelessdesign .harf01>p {
    position: initial;
    font-size: .56rem;
  }

  .timelessdesign .harf01>div p {
    position: initial;
    margin-top: 30px;
    width: 100%;
    padding: 0 20px;
  }

  .timelessdesign h2 {
    top: 100px;
    left: 20px;
    font-size: .38rem;
    line-height: 1.2;
  }

  .timelessdesign .harf {
    padding-bottom: 90px;
  }

  .timelessdesign .harf h3 {
    position: initial;
    font-size: .44rem;
    line-height: 1.2;
    margin-top: 50px;
    padding: 0 20px;
  }


  .timelessdesign .harf01 p:nth-of-type(2) {
    top: 80%;
    left: 50px;
    font-size: .18rem;
    width: 80%;
  }

  .features p {
    margin: 0;
    padding: 0;
  }

  .features h2 {
    font-size: .45rem;
  }

  .timelessdesign .harf img {
    width: 100%;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
      /* clip-path: polygon(頂点Aの座標,頂点Bの座標,頂点Cの座標,頂点Dの座標) */
    ;
  }


  .tomrrow-stechnology .harf {
    padding-bottom: 70px;
  }

  .tomrrow-stechnology .harf01 div {
    position: initial;
    width: 100%;
  }

  .tomrrow-stechnology .harf01 div>p {
    width: 100%;
    padding: 0 20px;
    margin-top: 30px;
    position: initial;
  }

  .tomrrow-stechnology .harf01>p {
    position: initial;
    font-size: .56rem;
    line-height: 0.9;
  }

  .tomrrow-stechnology .harf h3 {
    font-size: .38rem;
    line-height: 1.2;
    padding: 0 20px;
    margin-top: 50px;
  }

  .tomrrow-stechnology .harf img {
    width: 100%;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
      /* clip-path: polygon(頂点Aの座標,頂点Bの座標,頂点Cの座標,頂点Dの座標) */
    ;
  }

  .tomrrow-stechnology .harf01 p:nth-of-type(2) {
    top: 81%;
    left: 6%;
    font-size: .18rem;
    width: 90%;
  }


  .cruiser--spec>div>div p,
  .ringo--spec>div>div>p {
    font-size: .20rem;
  }

  .cruiser--spec>div>div a,
  .ringo--spec>div>div a {
    margin: 70px 0;
  }


  .message {
    font-size: .40rem;
  }

  .features p,
  .lineup p,
  .top--news p {
    margin: 0;
    padding: 0;

  }

  .top--news h2,
  .lineup h2,
  .features h2,
  .harf h2 {
    font-size: .38rem;
    line-height: 1.3;
    margin-top: 5px;
  }

  .features,
  .lineup,
  .top--news {
    display: block;
    padding: 60px 20px;
    justify-content: flex-start;
  }


  .cruiser--spec,
  .ringo--spec {
    display: flex;
    flex-direction: column;
  }

  .cruiser__img,
  .ringo__img {
    order: 1;
  }

  .cruiser--logo__text,
  .ringo--logo__text {
    order: 2;
  }

  .cruiser--logo__text,
  .ringo--logo__text {
    width: 100%;
    text-align: center;
  }

  .cruiser--logo__text h3 p,
  .ringo--logo__text h3 p {
    text-align: center;
  }

  .cruiser--spec div>h3>img,
  .ringo--spec div>h3>img {
    width: 50%;
    margin: 0 auto;
    margin-top: 50px;
  }

  .cruiser--spec .cruiser--logo__text h3 :last-child,
  .ringo--spec .ringo--logo__text h3 :last-child {
    width: 45%;
    rotate: 90deg;
    margin-top: -100px;
  }

  .aside {
    width: 730px;
  }

  .item-container {
    border: none;
    overflow: hidden;
  }
  .item-container h3 {
    padding-top: 0;
  }

  .pc-img {
    display: none;
  }

  .sp-img {
    display: block;
  }

  .pc_only {
    display: none;
  }

  .sp_only {
    display: block;
  }
  .sp_only_inline {
    display: inline;
  }




  .top--footer01 p:nth-of-type(2) {
    font-size: .40rem;
    line-height: 1.2;
    margin-bottom: 40px;
    margin-top: 30px;
  }

  .top--footer01 p:nth-of-type(3) {
    font-size: .18rem;
  }

  .top--footer01 {
    height: 58vh;
    background-position: 50% 50%;
  }

  .top--footer02 {
    display: flex;
    flex-direction: column;
  }

  .top--footer02 li {
    margin-bottom: 30px;
  }

  .top--footer02 div:nth-of-type(1) {
    order: 2;
    width: 75%;
  }

  .top--footer02 div:nth-of-type(2) {
    order: 1;
  }

  .footer-logo {
    margin-top: 40px;
  }

  .footer_nav {
    display: block;
  }

  .footer_nav ul {
    text-align: center;
  }

  .top--footer01 a {
    padding: 7px 120px 7px 115px;
    margin-top: 40px;
  }
	.top--footer01 a .sp_only{
    letter-spacing: -0.02em;
	}
  footer>p {
    padding-bottom: 40px;
  }


}

@media screen and (max-width: 900px) {
  #type04{
    position: relative;
	}
  header {
    padding: 10px 20px;
    position: relative;
  }

  .top-contact>a {
    display: none;
  }

  .harf01-img {
    width: 100%;
    background: linear-gradient(180deg, #000 0%, #000 50%, #fff 50%, #fff 100%);
    position: relative;
    bottom: 0;
    z-index: 1;
  }
  #type04{
    position: relative;
    top: 0;
  }
  .statement{

  }
  .statement .harf01 p:nth-of-type(1) {
    position: inherit;
		padding-top: 80px;
  }

  .statement .harf01>div {
    position: initial;
    padding: 0 20px;
    width: 100%;
    height: auto;
  }


  .statement .harf01 p:nth-of-type(2) {
    line-height: 2;
    font-size: .16rem;
    width: 100%;
  }


  .harf img {
    width: 100%;
    height: auto;
    clip-path: none;
    min-height: auto;
}

  .harf {
    position: initial;
  }

  .harf01 {
    border-right: none;
    overflow: hidden;
  }
  .statement {
    background-color:#000000;
  }
  .statement .harf01 {
    width: 100%;
  }


  .timelessdesign {
    background-image: none;
    background: #000;
    margin-bottom: -1px;
  }

  .timelessdesign .harf img,
  .tomrrow-stechnology .harf img {
    width: 100%;
    clip-path: none;
    object-fit: unset;
    min-height: unset !important;
    height: auto;
  }
  .timelessdesign .harf01, 
  .tomrrow-stechnology .harf01 {
    padding-bottom: 0;
  }

  .timelessdesign .harf01 div>ps {
    font-size: .16rem;
    position: initial;
  }

  .harf .harf01>p {
    font-size: .77rem;
    position: initial;
    margin: 6px 0 15px;
    padding-left: 17px;
    letter-spacing: -0.02em;
  }
  .wrapper{
    overflow: hidden;
    position: relative;
    width: 340px;
    border: 1px solid #ddd;
    margin-inline: auto;
  }

  .loop {
    animation: loop 30s linear infinite;
  }
  @keyframes loop {
    0%{
      transform: translateX(100%);
    }
    100%{
    transform: translateX(-600%);
    }
  }
  .loop span{
    white-space: nowrap;
  }

 .tomrrow-stechnology .harf01 div {
    position: initial;
    transform: translateX(0);
  }
  .timelessdesign .harf h3,
  .tomrrow-stechnology .harf h3 {
    position: initial;
    font-size: .30rem;
    letter-spacing: -.03em;
    line-height: 1.2;
    margin-top: 15px;
    margin-bottom: 20px;
    white-space: nowrap;
  }
  .timelessdesign .harf01 p:nth-of-type(2) {
    top: 66%;
    left: 20px;
    font-size: .16rem;
    width: 90%;
  }

  .features p {
    margin: 0;
    padding: 0;
  }

  .features h2,
  .harf h2,
  .top--news h2,
  .lineup h2 {
    font-size: .31rem;
    letter-spacing: -.05em;
    white-space: nowrap;
    margin-top: 2px;
  }

  .timelessdesign .harf01>div {
    position: initial;
  }

  .timelessdesign .harf01>div p {
    width: 100%;
    font-size: .16rem;
    margin-top: 20px;
  }

  .tomrrow-stechnology {
    background-image: none;
    background: #000;
  }

  .tomrrow-stechnology .harf img {
    width: 100%;
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)
      /* clip-path: polygon(頂点Aの座標,頂点Bの座標,頂点Cの座標,頂点Dの座標) */
    ;
  }

  .tomrrow-stechnology .harf01 div p {
    position: initial;
    font-size: .16rem;
    line-height: 2;
    width: 100%;
  }




  .tomrrow-stechnology .harf01 p:nth-of-type(2) {
    top: 64%;
    left: 6%;
    font-size: .16rem;
    width: 89%;
  }

  .cruiser--spec>div>div p,
  .ringo--spec>div>div>p {
    font-size: .16rem;
    line-height: 1.8;
  }

  .cruiser--spec>div>div a,
  .ringo--spec>div>div a {
    margin: 20px 0 40px;
  }

  .message {
    padding: 60px 0;
  }
  .message h2{
    font-size: .31rem;
    letter-spacing: -.05em;
    line-height: 1.2;
    padding: 0;
  }

  .features p,
  .lineup p,
  .top--news p {
    margin: 0;
    padding: 0;
    font-size: .20rem;
  }


  body .top--news {
    margin: 100px 0px 38px;
    padding: 0 20px;
}

  .features,
  .lineup {
    display: block;
    padding: 84px 20px 40px;
    justify-content: flex-start;
  }
	.bicycle--wallpaper {
    	height: 100vw;
	}
  .bicycle--wallpaper img{
    object-fit: cover;
    height: 130vw;
  }
  .cruiser_top-container {
    margin: 0px auto 120px;
  }
  .ringo_top-container {
  }
  .cruiser--spec,
  .ringo--spec {
    padding-top: 0;
  }

  .cruiser__img,
  .ringo__img {
    order: 1;
  }


  .cruiser--logo__text,
  .ringo--logo__text {
    width: 100%;
    text-align: center;
    order: 2;
	opacity:1;
  }

  .cruiser--logo__text h3 p,
  .ringo--logo__text h3 p {
    margin-top: 12px;
	margin-bottom: 30px;
    font-weight: 500;
  }

  .cruiser--spec div>h3>img {
    width: 60%;
    margin: 105px auto 0;
  }
  .cruiser_top-container .cruiser--img__sp,
  .ringo_top-container .ringo--spec__imgsp{
    width: 100%;
	margin-top: 0;
  }

  .ringo--spec div>h3>img {
    width: 60%;
    margin: 60px auto 0;
  }

  .cruiser--spec .cruiser--logo__text h3 :last-child,
  .ringo--spec .ringo--logo__text h3 :last-child {
    width: 100%;
    margin-bottom: 40px;
    margin-top: 0;
    rotate: none;
  }
  
  .slider--cruiser, .slider--ringo {
    margin-top: 40px;
  }
  .slider .slider-nav-wrap .slider-nav .slick-slide, .slider .slider-nav-wrap .slider-nav02 .slick-slide {
    padding: 0px 2px;
	}
  .slider .slider-nav-wrap {
    padding: 0 20px;
    margin-top: 17px;
  }

  .bottom-mg {
    padding-bottom: 20px;
  }

  .top-mg {
    padding-top: 20px;
  }

  .popup--sp_only {
    display: block;
  }



  .scroll-wrap {
    display: block;
  }
  .item {
    background: #FFF;
    width: 100%;
    top: 0;
    height: auto;
    margin-top: 80px;
    min-height: auto;
  }
  .commentary a {
    padding: 6px 75px;
    margin-top: 22px;
	}
  .js-item01 {
    position: relative;
  }

  .item-container h3 img {
    width: 59%;
    margin: 0 auto;
  }

  .js-item01 h3 img {
    width: 59%;
  } 

  .js-item02 h3 img {
    width: 59%;
  } 

  .js-item03 h3 img {
    width: 49%;
  } 
  .js-item04 h3 img {
    width: 49%;
  } 

  .js-item05 h3 img {
    width: 63%;
  } 

  .instagram--content {
    overflow-x: scroll;
    text-align: center;
    margin-bottom: 25px;
  }

  .top--instagram__smn {
    width: 1100px;
    max-width: none;
    margin-bottom: 10px;
  }

  .inst--block a.link--skip {
    margin: 0 auto 80px;
  }

  .slick-prev {
    left: 15px;
  }

  .slick-next {
    right: 15px;
  }
  .slick-dots li button:before {
    font-size: 30px;
  }
  .item-scroll .slick-slide img {
    width: calc(100% - 80px);
    margin: 0 auto;
  }

  .slider11 {
    margin: 10px auto 0;
  }

  .commentary p {
    /*
    margin-top: 40px;
    font-weight: bold;
    line-height: 1.8;
    width: 63%;
    */
    margin-top: 38px;
    font-weight: bold;
    line-height: 1.8;
    width: 90%;
  }
  .top--footer01 p:nth-of-type(1) {
		font-size: .20rem;
  }
  .top--footer01 p:nth-of-type(3) {
    font-size: .18rem;
    line-height: 1.5;
  }
  .top--footer01 p:nth-of-type(2) {
    margin-top: 50px;
}
  .top--footer01 {
    height: 70vh;
    background-position: 50% 50%;
    padding-top: 70px;
  }

  .top--footer02 {
    display: flex;
    flex-direction: column;
    padding: 81px 0 30px;
  }

  .top--footer02 li {
    margin-bottom: 20px;
  }


  .footer_nav {
    display: block;
  }

  .top--footer01 a {
    padding: 4px 105px 6px 100px;
    margin-top: 20px;
  }
  footer {
    padding-bottom: 35px;
  }
  footer>p {
    font-size: .10rem;
  }

}







/* contactページはここから */

.contact-top {
    background-image: url(../images/contact-back_cp.jpg);
    background-size: cover;
    width: 100vw;
    height: 32vw;
    margin-top: 77px;
    background-position: center;
    background-repeat: no-repeat;
    color: #fff;
    font-weight: bold;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-top h1 {
    font-size: .54rem;
	line-height: 1;
}

.contact-top p {
	font-size: .20rem;
    margin-top: 26px;
    text-align: center;
}
/*
.contact-top>div {
  height: 64px;
  width: 2px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
}
*/

.nema-box {
  font-size: .20rem;
  font-weight: bold;
}


.nema-box>p {
  text-align: center;
  margin: 80px 0 40px;
}
/*
.name-card {
    display: flex;
    flex-wrap: wrap;
    width: 966px;
    max-width: 100%;
    margin: 0 auto 66px;
    justify-content: space-between;
    box-shadow: rgba(100, 100, 100, 0.09) 0px 0px 6px 3px;
    padding: 80px 8%;
    align-items: center;
}
*/
.name-card {
    display: flex;
    flex-wrap: wrap;
    width: 610px;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto 66px;
    justify-content: space-between;
    box-shadow: rgba(100, 100, 100, 0.09) 0px 0px 6px 3px;
    padding: 70px 90px;
    align-items: center;
}
.name-card__text {
  font-size: .16rem;
}

.name-card__text a {
  color: #000;
  text-decoration: underline;
  text-decoration-color: #000;
}

.name-card__text p:nth-child(1) {
	line-height: 1.1;
    font-size: .24rem;
    margin-bottom: 20px;
}
.name-card__text p:nth-child(1) span{
    font-size: .15rem;
}
.name-card__text p:nth-child(2),
.name-card__text p:nth-child(3), 
.name-card__text p:nth-child(4) {
    margin-bottom: 5px;
}

.contact--box h2 {
  font-size: .20rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 120px;
}

.contact--box {
  width: 966px;
  max-width: 100%;
  margin: 0 auto;
  font-weight: bold;
}
.contact--box div span{
  color: #fff;
  background-color: #000;
  padding: 2px 10px;
  border-radius: 6px;
  font-size: .14rem;
}
.contact--box div span.any{
  background-color: #9F9F9F;
}
.contact--kinds div label{
  display: flex;
  margin-bottom: 10px;
    align-items: center;
}
.contact--item p:nth-of-type(1){
  width: 80px;
  max-width: 100%;
}

.contact--row p:nth-of-type(2){
  width: 130px;
  max-width: 100%;
}
input[type="radio"] {
    margin-right: 17px;
    accent-color: #000;
    inline-size: 16px;
    block-size: 16px;
}
.contact--kinds div div{

}

.contact--row{
  display: flex;
  justify-content: space-between;
  margin-bottom: 32px;
    align-items: center;
}
.contaxt--td__seimei1 label{
	display:flex;
}
.contaxt--td__seimei2 label{
	display:flex;
}
.contaxt--label__sei1{
    width: 56px;
    padding-top: 6px;
}
.contaxt--label__mei1{
    width: 56px;
    padding-top: 6px;
}
.contaxt--label__sei2{
    width: 56px;
    padding-top: 6px;
}
.contaxt--label__mei2{
    width: 56px;
    padding-top: 6px;
}


.contact--item{
  display: flex;
  flex-wrap: wrap;
}

.radio-list{
  width: 626px;
  max-width: 100%;
}

.contact--content__of__inquiry input,
.contact--tel input,
.contact--email input,
.contact--address input,
.contact--post__card input{
  width: 626px;
  max-width: 100%;
  height: 48px;
  background-color: #F0F0F0;
  border: none;
  padding: 0 10px;
  font-weight: normal;
}
textarea{
  	width: 626px;
  	max-width: 100%;
  	background-color: #F0F0F0;
  	border: none;
    width: 100% !important;
    height: 240px !important;
  padding: 0 10px;
  font-weight: normal;
}
input[type="text"]:focus {
  outline: solid 2px 000 !important;
}
div.mfp_err {
    color: #d50101 !important;
}

.contact--list .contact--content__of__inquiry,
.contact--list .contact--kinds {
  align-items: initial;
}
.contact--list .td{
    width: 65%;
    max-width: 628px;
}

.contact--name >div:nth-of-type(2),
.contact--hurigana > div:nth-of-type(2){
display: flex;
flex-wrap: wrap;
}

.contact--name div>div,
.contact--hurigana  div>div{
width: 313px;
}

.contact--name input,
.contact--hurigana input{
  background-color: #F0F0F0;
  border: none;
  height: 48px;
}
.contact--list{
    display: flex;
    flex-direction: column;
}
.contact--list .mfp_element_file {
    font-size: 12px;
    border: none;
    border-radius: 3px;
    box-shadow: none;
    background: #F0F0F0;
	width:100%;
}
.form_caution {
    font-size: .14rem;
    line-height: 1.6;
    margin-bottom: 10px;
}
.privacy--policy{
  max-width: 100%;
  margin: 0 auto;
}

.privacy--policy__text {
    overflow: scroll;
    height: 400px;
    width: 966px;
    max-width: 100%;
    margin: 38px auto 0;
    border: 1px solid #F0F0F0;
    box-shadow: 0px 0px 5px 2px #F0F0F0 inset;
    border-radius: 5px;
    padding: 0 20px;
}
.privacy--policy__title{
    margin-top: 100px;
}
.privacy--policy__title p{
  font-weight: bold;
  font-size: .20rem;
  text-align: center;
  line-height: 1.7;
}
.privacy--policy__title h3 {
    font-size: .40rem;
    text-align: center;
    margin-top: 120px;
    margin-bottom: 5px;
    line-height: 1;
    letter-spacing: -0.05em;
}
.privacy--policy__text p{
  padding: 30px 0;
}
.privacy--policy__text li{
  margin-bottom: 30px;
}

.contact--button > input{
  background-color: #000;
  color: #fff;
  font-size: .18rem;
  font-weight: bold;
  text-align: center;
  padding: 15px 75px 15px 75px;
  border-radius: 25px;
  text-shadow: 0 0 black;
}
.contact--button > input:hover{
	background-color: #fff;
    color: #000;
    border: solid 1px #000;
    opacity: 1;
}
.contact--button{
  width: 258px;
    margin: 60px auto 150px;
    text-align: center;
    display: grid;
}





@media screen and (max-width: 900px){
  .nema-box{
    padding: 0 20px;
  } 
  .contact--box{
    padding: 0 20px;
  } 
  .contact--box h2{
    text-align: justify;
  }

.contact--row{
  display: block;
}

.contact--content__of__inquiry input, 
.contact--tel input, 
.contact--email input, 
.contact--address input, 
.contact--post__card input, 
textarea {
  width: 100%;
}

.contact--item{
  margin-bottom: 20px;
}

.privacy--policy__title p:nth-child(1) {
  text-align: justify;
}


}
@media screen and (max-width: 650px){
  .top--fix__box{
    display: block;
  }
  .c-loader-bg img{
		margin-bottom: 50px;
  }

  .c-loader-bg p{
    line-height: 1.2;
    font-size: .36rem;
    padding-left: 27px;
  }

  .contact-top{
    background-image: url(../images/contact-back_sp.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100vw;
    height: 100vw;
	margin-top: 0px;
  }
  .contact-top p {
    font-size: .16rem;
    margin-top: 20px;
    line-height: 1.6;
  }
.name-card__text p:nth-child(1) {
    margin-bottom: 26px;
}
.contact-top h1{
	font-size: .54rem;
}
.name-card__text p:nth-child(2), .name-card__text p:nth-child(3), .name-card__text p:nth-child(4) {
    margin-bottom: 5px;
    line-height: 1.5;
    margin-top: 10px;
}
  .name-card{
    display: block;
    justify-content: center;
    padding: 39px 0 35px;
    margin-bottom: 85px;
  } 
	.name-card img {
    	margin: 0 auto 50px;
    	display: block;
    	width: 48%;
	}

  .name-card__text{
    padding: 0 20px;
  } 
  .nema-box>p {
    font-size: .16rem;
    letter-spacing: -.001em;
    line-height: 1.5;
    margin: 60px 0 40px;
  }

  .contact--box h2{
    font-size: .16rem;
    text-align: justify;
    line-height: 1.5;
    margin-bottom: 87px;
  }

  .contact--name div>div, .contact--hurigana div>div {
    width: 170px;
	}
	.contact--list .td {
    	width: 100%;
	}
	.contact--list .td.contaxt--td__seimei1,
	.contact--list .td.contaxt--td__seimei2{
    	flex-wrap: nowrap;
    	justify-content: space-between;
	}
.contact--item p:nth-of-type(1) {
    width: 67px;
}
contact--row {
    margin-bottom: 37px;
}
.contact--kinds div label {
    line-height: 1.5;
    margin-bottom: 14px;
}
.contact--item {
    margin-bottom: 15px;
}
.contaxt--label__sei1,
.contaxt--label__sei2,
.contaxt--label__mei1,
.contaxt--label__mei2{
    width: 27%;
}
.contaxt--label__mei1 {
    margin-left: 13%;
}
.contaxt--label__mei2 {
    margin-left: 13%;
}
	.contact--name input, .contact--hurigana input {
    	background-color: #F0F0F0;
    	border: none;
    	height: 48px;
    	width: 60%;
	}
	
.privacy--policy__title p:nth-child(1){
  font-size: .16rem;
  line-height: 1.5;
}
.privacy--policy__title h3{
    margin-top: 60px;
}

.spec--popup__table th{
  display: block;
  width: 330px;
}
.spec--popup__table tr{
  display: inline-block;
  padding: 0 20px;
  width: 370px;
  margin-bottom: 40px;
  border: none;
}
.p40_bottom{
  padding-bottom: 0;
}

.spec--popup__table td{
  width: 235px;
  margin-top: 20px;
}
/* .spec--popup__table td p{
  padding-top: 20px;
} */
table {
  table-layout: fixed;
}

.lity-close {
  right: 24px;
  top: 27px;
}
.lity-close:hover, .lity-close:focus, .lity-close:active, .lity-close:visited {
  right: 24px;
  top: 27px;
}
.spec--popup__table th {
  border-bottom: solid 1px #F0F0F0;
  padding-bottom: 10px;
}
.ambassador--spec__popup img {
  width: 250px;
  max-width: 90%;
}
.the_trixie--spec__popup img{
  width: 330px;
  max-width: 90%;
}
.clubman--spec__popup img {
  width: 200px;
}
.beachin--spec__popup img {
  width: 205px;
}
.trino--spec__popup img {
  width: 250px;
}
.lity-wrap {
  padding: 20px;
}
aside {
  padding-bottom: 20px;
}
.spec--popup__table td p{
  line-height: 1.5;
}
.top-mg{
  margin-top: 10px;
}
.bot-mg{
  margin-bottom: 10px;
}
aside img{
  padding: 50px 0 10px;
}

}





@media screen and (min-width:767px) and (max-width:1200px){
.statement .harf01>div {
    max-width: 90%;
    padding: 0;
}
.features, .lineup, .top--news {
    max-width: 90%;
}


.timelessdesign .harf01>div, .tomrrow-stechnology .harf01>div {
    max-width: 94%;
}
.tomrrow-stechnology .harf01>div {
    transform: translateX(0);
    right: 4%;
    left: auto;
    width: fit-content;
}
.timelessdesign .harf01>div p, .tomrrow-stechnology .harf01>div p {
    width: 100%;
}
.cruiser--logo__text, .ringo--logo__text {
    padding: 0 40px;
}
.cruiser--logo__text p, .ringo--logo__text p {
	font-size: .18rem;
}

.slider--cruiser, .slider--ringo {
    max-width: 80%;
}
.ringo_top-container {

}

.slider11 {
    max-width: 600px;
    width: 80%;
}

.features, .lineup, .top--news {
    max-width: 90%;
    padding: 120px 0 60px;
}
.top--news {
    padding: 0px 0 60px;
}
.top--footer02 {
    max-width: 92%;
}
.features h2,
.harf h2, .harf h2,
.top--news h2, .lineup h2 {
    font-size: 5vw;
}
.timelessdesign .harf h3, .tomrrow-stechnology .harf h3 {
    font-size: 3.6vw;
    margin-bottom: 29px;
}
.timelessdesign .harf01>div p, .tomrrow-stechnology .harf01>div p {
    font-size: 1.7vw;
}

}


@media screen and (max-width: 550px) {
  .slick__item{
    width: 284px !important;
  }
   .slider .slider-nav-wrap {
    padding: 0 20px;
    margin-top: 12px;
  }
  .slider{
    display:block;
  }
  .slider {
    position: relative;
    width: 100%;
    margin: 0 auto;
    left: 0;
    padding: 0 20px 0;
  }

	.slider .slider-nav-wrap .slick-next01, 
	.slider .slider-nav-wrap .slick-next02 {
    	rotate: 180deg;
    	top: 0;
    	bottom: 0;
    	right: 2px;
    	left: auto;
    	width: 15px;
    	height: 15px;
	}

  .slider .slider-nav-wrap .slick-prev01,
  .slider .slider-nav-wrap .slick-prev02 {
    rotate: 180deg;
    top: 0;
    bottom: 0;
    right: 30px;
    left: -666px;
  }

  .slider .slider-nav-wrap .slick-prev01,
  .slider .slider-nav-wrap .slick-prev02 {
    width: 15px;
    height: 15px;
    rotate: 180deg;
    top: 0;
    bottom: 0;
    right: auto;
    left: 0;
	}
.cruiser_top-container {
    margin: 0px auto 90px;
}
.ringo_top-container {
    background-color: #F2F2F2;
    padding-bottom: 80px;
    padding-top: 20px;
}	
}