@charset "UTF-8";

/*===========================================================
 0. reset + base
 ===========================================================*/

/*--------------------------------------
　基本設定
---------------------------------------*/


* {
   box-sizing: border-box;
   margin: 0px; 
   padding: 0px; 
}


body {
   margin: 0;
   padding: 0;
   font-family:  'Noto Sans JP', 游ゴシック体, ヒラギノ角ゴシック, 'Raleway', 'Montserrat', "Helvetica Neue", Helvetica, Arial, sans-serif;
 }

 .section {
 position: sticky;
 top: 0;
}

.white_wrapper {
  background-color: #fff;
}

body .contents_title h2 {
  font-family: Raleway;
  font-size:20px;
  letter-spacing: 0.15em;
  color: #222; 
  text-align: center;
  padding-top: 120px;
  padding-bottom: 5px;
  font-weight: 600;
} 

a {
  text-decoration: none;
  color: #222;
}

a:hover {
   cursor: pointer !important;
}

li {
  list-style: none;
}

.caption p {
  font-family: Montserrat;
  font-weight: normal;
}

.line {
  font-family: Montserrat;
  font-weight: normal;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.line::after {
  background-color: #222;
  height: 1px;
  content: "";
  width: 50px;
  margin-left: 3px;
}

.line:hover {
  text-decoration: none;
  transform: translateX(-10px);
  cursor: pointer;
  transition: all 0.2s ease-in;
  cursor: pointer;
}

.storelink p {
  font-family: Montserrat;
  color: #222;
  font-size: 12px;
  text-decoration: none;
  text-align: center;
  margin: 0 auto;
  font-weight: 500;
  padding-top: 40px;
  padding-bottom: 30px;
  z-index: 100;
}

.storelink a {
  display: block;
}

.storelink {
 width: 120px;
 height: 120px;
 border-radius: 50%;
 margin: 0 auto;
 border: 1.5px solid #222; 
 margin-top: 20px;
 margin-bottom: 80px;
 z-index: 100;
}

.storelink:hover {
  color: #fff;
  text-decoration: none;
  border: 1.8px solid #b4a270;
  background-color: #b4a270;
  transition: all 0.2s ease-in;
  cursor: pointer;
}

.storelink p:hover {
 color:#fff;
}

.storelink a:hover {
  color: #fff;
  z-index: 100!important ;
}

.riquired {
  padding: 0.5em;
  font-size: 0.75em;
  color: #cd5c5c;
}


  
/*レスポンシブ共通設定*/
@media screen and (max-width: 768px)  {  

body .contents_title h2 {
  font-size:15px;
  padding-top: 50px;
  } 
}


/*--------------------------------------
　メインページ Start
---------------------------------------*/

/*Headerここから*/

.top-img {
display: none;  
}
.bx-viewport .top-img {
  display: block !important;
}

header {
  width: 100%;
  height: 49px;
  position: fixed;
  top: 0;
  left: 0;
  padding: 0 3% 0 3%;
  background: transparent;
  z-index: 100; 
  font-family: Montserrat;
  transition: all .5s;
}


/*ヘッダー左ロゴ*/
.header_left {
 position: fixed;
 left: 30px;
 height: 30px;
 top: 1.5%; 
 z-index: 30;
}

.header_left img {
  width: 140px;
}


/*ヘッダーナビゲーション*/
nav {
  position: relative;
  width: 100%;
}

nav ul {
  margin: 10px 0 10px 0;
  display: flex;
  justify-content: flex-end;
  list-style: none;
  width: 100%;
}

nav a {
  color: #fff;
  text-decoration: none;
  margin: 0 10px 0 10px;
  font-size: 13px;
}

header.scroll-nav {
  background: transparent;
}

header.scroll-nav ul li a {
  color: #222;
  transition: all 0.2s ease-in;
}

header.scroll-nav2 {
  background: rgba(255,255,255,0.9);
  transition: all 0.2s ease-in;
}

header.scroll-nav2 ul li a {
  color: #222;
  transition: all 0.2s ease-in;
}

nav ul li a:hover {
  border-bottom: 1px solid;
  transition: all 0.3s ease-in;
}
 
.header_nav_onlinestore {
  margin-left: 35px;
  position: relative;
}

/*オンラインストアバッグアイコン*/
.fas fa-shopping-bag:befor {
  content:"\f290";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  cursor: pointer;
}

.drawer {
  display: none;
}

#js-slidemenu {
  display: none;
}

#nav_toggle {
  display: none;
}

.sns {
  display: none;
}

/*レスポンシブ　タブレット */
@media screen and (max-width: 768px) {

header.scroll-nav {
  background: rgba(255,255,255,0.9);
}

header.scroll-nav ul li a {
  color: #fff;
}

 /*hamburger menu style*/
#nav_toggle {
  display: block;
  position: absolute;
  top: 0.3em;
  right: 1em;
  z-index: 20;
}
#nav_toggle div {
  position: relative;
  display: block;
  top: 4px;
  width: 32px;
  height: 60px;
  z-index: 100;
}
#nav_toggle span {
  font-size: 0.7em;
  color:#888;
  position: absolute;
  display: block;
  width: 100%;
  height: 3px;
  background: #888;
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

#nav_toggle div p {
  font-size: 1em;
  content: #fff;
  top: 40px;
  }
/*hamburger menu close style*/
#nav_toggle span:nth-child(1) {
  top:0px;
}
#nav_toggle span:nth-child(2) {
  top:12px;
}
#nav_toggle span:nth-child(3) {
  width: 0;
  height: 0;
  top:20px;
}
/*hamburger menu open style*/
.open #nav_toggle span:nth-child(1) {
  top: 6px;
  -webkit-transform: rotate(155deg);
  -moz-transform: rotate(155deg);
  transform: rotate(155deg);
}
.open #nav_toggle span:nth-child(2) {
  top: 6px;
  -webkit-transform: rotate(-155deg);
  -moz-transform: rotate(-155deg);
  transform: rotate(-155deg);
}
.open #nav_toggle span:nth-child(3) {
  display: none;

}
/*nav style*/

header {
  padding:15px 2% 15px 4%;
}

.header_left img {
  align-items: center;
}

nav {
  top: 0;
  right: 0;
  background: rgba(0,0,0,0.8);
  max-width: 100%;
  width: 85%;
  height: 100vh;
  position: absolute;
  padding: 2em;
  opacity: 0;
  visibility: hidden;
  z-index: 0;
  -webkit-transform: scale(0.85);
  -ms-transform: scale(0.85);
  transform: scale(0.85);
  transition: 0.5s;
}
/*nav list style*/
nav ul {
  flex-direction: column;
  list-style-type: none;
  padding: 1em 0 0 0;
}
nav ul li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
/*nav link style*/
nav ul li a {
  padding: 1em 0;
  display: block;
  text-decoration: none;
  font-size: 1.1em;
  font-weight: 200;
  color: #fff;
  transition: 0.5s;
}
  

nav ul li:last-child {
  border: none;
}
.add_nav {
  display: block;
  opacity: 1;
  visibility: visible;
  z-index: 10;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition: 0.5s;
}

.add_container {
  -webkit-filter: blur(8px);
  -moz-filter: blur(8px);
  -o-filter: blur(8px);
  -ms-filter: blur(8px);
  filter: blur(8px);
  transition: 0.5s;
}

.sns {
  display: block;
  display: flex;
  justify-content: flex-start;
  padding-right: 1em;
  border-bottom: none;
}

.sns img {
  width: 20px;
}

 .sns:hover {
  transition: 0;
}
}


/*topページ Start*/

.top-visual {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.top-visual img {
  width: 100%;
}
 
.top-visual h1 {
  max-width: 32%;
  position: absolute;
  top: 39%;
  left: 5%;
}

.top-visual.pc {
  display: block !important;
}

.top-visual .top-img .tablet {
  display: none !important;
}

.top-visual .top-img .sp {
  display: none !important;
}

/*レスポンシブ　タブレット*/
@media screen and (max-width: 768px) {
.top-visual .top-img .pc {
  display: none !important;
}

.top-visual .top-img .tablet {
  display: block !important;
}

.top-visual .top-img .sp{
  display: none !important;
}

.top-visual h1 {
  max-width: 48%;
  position: absolute;
  top: 39%;
  left: 26%;
}
}

/*レスポンシブ　スマホ用*/
@media screen and (max-width: 400px) {
.top-visual .top-img .pc {
  display: none !important;
}

.top-visual .top-img .tablet {
  display: none !important;
}

.top-visual .top-img .sp {
  display: block !important;
}

.top-visual h1 {
  max-width: 80%;
  position: absolute;
  top: 39%;
  left: 10%;
}
}
 

 /*About・philosophyここから*/
.about_contaner {
  background-color: #d9dfe2;
  width: 100%;
}

.about_contaner .contents_title h2 {
  font-size: 20px;
}

/*philosophyタイトル*/
.about_contaner .contents_title h4 {
  font-family: Montserrat;
  font-size: 14px;
  letter-spacing: 0.05em;
  font-weight: 400;
  color: #fff;
  text-align: center;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 50px;
  padding-top: 14px;
  position: relative;
}

.about_contaner .contents_title h4:before {
  content: '';
  position: absolute;
  left: 50%;
  top: -2px;
  display: inline-block;
  width: 40px;/*線の長さ*/
  height: 1px;/*線の太さ*/
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);/*位置調整*/
  background-color: #222;/*線の色*/
  border-radius: 0.5px;/*線の丸み*/
}



/*.About・philosophy画像とテキストサイズ{*/
.philosophy_contaner {
  width: 80%;
  height: auto;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.philosophy-img {
  width: 100%;
  padding: 30px;
}

/*About・philosophy画像*/
.philosophy-img img {
  width: 100%;
}


/*About・philosophyテキスト中見出し*/
.abouttext h2 {
  font-family: Noto Sans JP;
  font-size: 15px;
  font-weight: 500; 
  color: #808080;
  margin-top: 40px;
  margin-bottom: 40px; 
  margin-left: 10px;
}


/*About・philosophy本文*/
.abouttext p {
  font-family: Noto Sans JP;
  font-size: 14px;
  font-weight: 400;
  color: #222;
  line-height: 2.4;
  margin-top: 40px;
  margin-bottom: 30px; 
  margin-left: 10px;
  white-space: nowrap;
}

.abouttext span p {
  line-height: 2;
  display: inline-block;
}

.abouttext h2 span {
  display: inline-block;
} 
     

/*マテリアルへのリンク*/
.about_material_contaner {
 display: flex;
 justify-content: center;
 align-items: center;
}

.about_nav_maru {
 width: 120px;
 height: 120px;
 border-radius: 50%;
 text-align: center;
 line-height: 120px;
 color: gray;
 border: 1.5px solid #222; 
 margin-top: 50px;
 margin-bottom: 80px;
}

.about_nav_text {
font-family: Noto Sans JP;
font-size: 13px;
font-weight: 400;
color: #222;
}

.about_nav_maru:hover {
  text-decoration: none;
  background-color: #fff;
  border:none;
  transition: all 0.2s ease-in;
  cursor: pointer;
}



/*--------------------------------------
　マテリアルページ Start
---------------------------------------*/

/*ヘッダー左ロゴ*/
.material_contaner .contact_logo {
 position: fixed;
 left: 30px;
 height: 30px;
 top: 1.5%; 
 z-index: 30;
}

.material_contaner .contact_logo img {
  width: 140px;
}

.material_contaner {
  background-color: #d9dfe2;
  width: 100%;
}

/*サブタイトル*/
.contents_title h4 {
  font-family: Noto Sans JP;
  font-size: 12px;
  font-weight: 400;
  color: #fff;
  text-align: center;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 20px;
}

/*マテリアルページ共通　テキスト*/

.materialtext {
margin: 0 10px 50px 10px;
}

.materialtext h2 {
  font-family: Montserrat;
  font-size: 15px;
  font-weight: 500; 
  color: #a08c57;
  margin-top: 10px;
}

.material_contaner .contents_title h4 {
  padding-top: 14px;
  font-family: Noto Sans JP;
  position: relative;
}


 .material_contaner .contents_title h4:before {
  content: '';
  position: absolute;
  left: 50%;
  top: -2px;
  display: inline-block;
  width: 40px;/*線の長さ*/
  height: 1px;/*線の太さ*/
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);/*位置調整*/
  background-color: #222;/*線の色*/
  border-radius: 0.5px;/*線の丸み*/

}




.materialtext .text_kana {
  font-family: Noto Sans JP;
  font-size: 12px;
  font-weight: 500;
  color: #a08c57;
  text-align: center;
} 

.materialtext p {
  font-family: Noto Sans JP;
  font-size: 13px;
  font-weight: 400;
  color: #222;
  line-height: 2.4;
  margin-top: 40px;
  white-space: nowrap;
}

.material_contaner .material_inner {
  width: 80%;
  margin: 0 auto;
}

/*ラボグロウダイヤモンドとは ここから*/
.aboutdiamond_contaner {
  width: 100%;
  height: auto;
  margin: 80px 0 100px 0 ;
  display: flex;
  justify-content: space-between;
  align-content: center;
}

/*ダイヤモンド画像*/
.aboutdiamond-img {
  width: 50%;
  height: auto;
  margin: 0 10px 0 10px;
}

.aboutdiamond-img img {
  width: 100%;  
}

/*リサイクルメタル についてここから*/
.aboutmetal_contaner {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 60px;
}

/*リサイクルメタル画像*/
.aboutmetal-img {
  width: 50%;
  height: auto;
  margin: 0 10px 0 10px;
}

.aboutmetal-img img {
  width: 100%;
}



/*マテリアルページレスポンシブ　tablet用*/
@media screen and (max-width: 768px) { 

  .material_contaner .material_inner {
  width: 90%;
  margin: 0 auto;
  }

  .philosophy_contaner {
    flex-wrap: wrap;
  }

  .material_contaner .contents_title h2 {
    padding-top: 100px;
  }

  .contents_title h4 {
    font-size: 13px;
    margin-bottom: 30px;
    font-weight: normal;
    z-index: 40;
  }

  .aboutimg_anime {
    margin: 10px;
  }

  .philosophy-img img {
    width: 100%;
    margin: 10px;
  }
  
  .abouttext h2 {
    font-size: 15px;
    color: #808080;   
    margin-top: 10px;
    margin-bottom: 15px; 
    margin-left: 0;
    text-align: center;
    z-index: 40;
  }

  .abouttext p {
    font-size: 13px;
    line-height: 2;
    margin-top: 30px;
    margin-right: auto;
    margin-bottom: 20px;
    margin-left: 0;
    color: #222;
    text-align: center;
  }

  .abouttext {
    line-height: 2;
    display: inline-block;
  }
    
  .abouttexth span {
    display: inline-block;
  }

  .about_nav {
    font-size: 12px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding-top: 40px;
    padding-bottom: 50px;
  }


  .material_contaner {
  width: 100%;
  }


  .aboutdiamond_contaner {
  margin: 80px 0 20px 0 ;
  display: flex;
  }

  .aboutmetal_contaner {
  margin-bottom: 0;
  }

  /*ラボグロウンダイヤモンド画像*/

  .aboutdiamond-img {
    width: 40%;
    height: auto;
    margin: 30px 10px 60px 10px;
  }

  /*リサイクルメタル画像*/
  .aboutmetal-img {
    width: 40%;
    height: auto;
    margin: 30px 10px 50px 0;
  }

   /*マテリアル見出し*/
  .materialtext h2 {
    font-size: 12px;
    margin-bottom: 15px; 
    margin-left: 10px;
   }

   /*マテリアル本文*/
   .materialtext p {
    font-size: 12px;
    line-height: 2;
    margin-top: 20px;
    margin-right: auto;
    margin-bottom: 20px;
    margin-left: 5px;
   }
  }

  /*マテリアルページSP用レスポンシブ*/

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

  .philosophy_contaner {
  width: 90%;
  }

  .philosophy-img {
  display: block;
  width: 100%;
  padding: 10px; 
  } 

 .aboutdiamond_contaner {
   flex-wrap: wrap;
  margin: 60px 0 0 0 ;
  }

  .aboutmetal_contaner {
   flex-wrap: wrap-reverse;
   margin-bottom: 0;
  
  }

  .abouttext {
    width: 310px;
  }

  .abouttext h2 {
   font-size: 13px;
   text-align: left;
   margin-top: 30px;
   z-index: 40;
  }

  .abouttext p {
   font-size:11px; 
   text-align: left;
   margin-left: 0;
  }

  .philosophy_contaner span {
    display: block;
    white-space: pre-wrap;
  }

  .aboutdiamond-img {
    width: 90%;
    margin: 0 auto
    height: auto;
    margin: 10px;

  }

  .aboutmetal-img {
    width: 90%;
    height: auto;
    margin: 10px;
  }

  .materialtext {
    width: 310px;
  }

  .materialtext h2 {
   font-size: 13px;
   text-align: left;
   margin-left: 0;
  }

  .materialtext p {
   font-size:11px; 
   text-align: left;
   margin-left: 0;
   margin-bottom: 0;
  }


  .material_contaner span {
    display: block;
    white-space: pre-wrap;
  }
}
/*abouto.materialここまで*/


/*New collection Start*/

.newitem_contaner {
  width: 100%;
}

.newitem_position1 {
  position: relative;
  margin: 0 0 110% 0;
}

.newitem_position1 .newitem_title {
  position: absolute;
  top: 8%;
  left: 48%;
}
 

.newitem_position1 .newitem_title_logo {
  width: 90%;  
}

.newitem_position1 {
position: relative;
}

.newitem_position1 .newitem1_img {
position: relative;
top: 0;
left: 0;
width: 45%;
z-index: 20;
overflow: hidden;
transition: all 0.3s ease-in;
}

.newitem1 p {
  position: absolute;
  left: 2%;
  top: 100%;
}

  
.newitem_position1 .newitem2_img {
  position: absolute;
  top: 45%;
  left: 62%;
  width: 20%;
  z-index: 30;
 } 


 .newitem2 p {
  position: absolute;
  left: 62%;
  top: 90%;
}
  
.newitem_position1 .newitem3_img {
  position: absolute;
  top: 124%;
  left: 8%;
  width: 45%;
  z-index: 10;
 }

.newitem3 p {
  position: absolute;
  left: 8%;
  top: 168%;
}

 .newitem_position1 .newitem4_img {
  position: absolute;
  top: 145%;
  right: 5%;
  width: 45%;
  z-index: 20;
 }

 .newitem4 p {
  position: absolute;
  left: 50%;
  top: 245%;
}

 .newitem_position1 .newitem5_img {
  position: absolute;
  top: 185%;
  left: 15%;
  width: 25%;
  z-index: 20;
 }

 .newitem5 p {
  position: absolute;
  left: 15%;
  top: 232%;
}

.newitem_position1_sp {
  display: none;
}

/*下３枚一列に並べるレイアウト部分*/
.newitem_contaner .newitem_position2 {
  margin: 0 auto;
  max-width: 95%; 
}

.newitem_list {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.newitem {
  position: relative;
  overflow: hidden;
  margin: 0 30px 10px 0;
}

.newitem:nth-child(3n){
  margin-right: 0;
}

.newitem img {
  width: 100%;
  height: 100%;
  padding-bottom: 5px;
  margin-top: 8px;
  vertical-align: top;
  z-index: 20;
}

.caption p {
  font-family: Montserrat;
  font-size: 13px;
  color: #222;
  font-weight: 400;
  text-align: left;
}


/*newitem collection SP レスポンシブ*/
@media screen and (max-width: 400px) {

.newitem_contaner .newitem_position1 {
  display: none;
}

.newitem_position1_sp {
  background-color: #fff;
}

.newitem_position1_sp .newitem_title_logo {
  display: block;
 padding: 50px 40px 50px 40px;
  width: 100%;
}


.newitem_contaner .contents_title h2 {
  display: none;
}

.contents_title h3 {
  display: none;
}

.newitem_position1_sp {
  display: block;
}

.newitem_contaner .newitem_position2 {
  margin: 0 auto;
  max-width: 100%; 
}


.newitem_contaner {
  margin: 0 auto;
  max-width: 100%; 
}
  

.newitem {
  margin: 10px 30px 5px 30px;
}

.newitem:nth-child(3n){
  margin-right: 30px;
}

  .newitem_list {
  display: block;
  }


  .caption p {
  font-family: Montserrat;
  width: 100%;
  height:100%;
  font-size: 13px;
  color: #222;
  font-weight: 400;
  text-align: left;
  z-index: 40;
}
}

/*newitemここまで*/



/*Topseller Start*/

.topseller_contaner {
  max-width: 95%; 
  margin: 0 auto;
}

.topseller_contaner h2 {
  margin-bottom: 50px;
} 

.topseller_list {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.topseller_item {
  position: relative;
  overflow: hidden;
  margin: 0 15px 10px 15px;

}
.topseller_item img { 
  width: 100%;
  height: 100%;
  vertical-align: top;
}

.topseller_item .caption {
  width: 100%;
  height:100%;
  position: absolute;
  bottom: 1px;
  opacity: 0;
  background: rgba(255, 255, 255, 0);
  transition: all 0.2s ease-in;
  z-index: 10;
}

.topseller_item .caption p {
  font-size: 13px;
  color: #fff;
  padding: 88% 5% 0 0;
  text-align: right;
  font-weight: 400;
}

.topseller_item .caption:hover {
  opacity: 1; /* キャプションを表示する */
  transition: all 0.2s ease-in;
  background: rgba(0, 0, 0, 0.4);
  cursor: pointer;
}

/*画像左上にナンバーバッジ１〜４表示*/

.topseller_list{
  position: relative;
  text-align: center;
  counter-reset: num 0;
}

.topseller_item_img::before {
  counter-increment: num 1;
  content: counter(num);
  font-family: Montserrat;
  position: absolute;
  font-size: 13px;
  color: #fff;
  top: 0;
  width: 32px;
  height: 25px;
  padding-top: 5px;
  background-color: #808080; 
  z-index: 20
}

/*topseller レスポンシブ*/
@media screen and (max-width: 768px) {
 
.topseller_contaner h2 {
  margin-bottom: 30px;
  } 

 .topseller_list {
  display: flex;
  flex-wrap: wrap;
  }

.topseller_item img {
  margin: 0 0 5px 0;
  }

.topseller_item .caption {
  display: block;
  width: 100%;
  height:100%;
  position: relative;
  bottom: 1px;
  opacity: 1;
  background: rgba(255, 255, 255, 0);
  z-index: 20
}


.topseller_item .caption p {
  padding: 0 0 10px 0;
  color: #222;
  font-weight: 400;
  z-index: 50;
  text-align: left;
}


.topseller_item .caption p:hover {
  display: none;
 }
}

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

 .topseller_item {
  width: 70%
 }

.topseller_item img { 

  width: 100%;
  height: 100%;
  vertical-align: top;
}

.topseller_item .caption {
  display: block;
  width: 70%;
  height:100%;
  position: relative;
  bottom: 1px;
  opacity: 1;
  background: rgba(255, 255, 255, 0);
  z-index: 20
}

.topseller_item .caption p {
  padding: 0 0 10px 0;
  color: #222;
  font-weight: 400;
  z-index: 50;
  text-align: left;
}
}

/*topsellerここまで*/


/*コレクション Start*/

.collections_contaner {
  margin: 0 auto;
  max-width: 95%; 
}

.collections_contaner h2 {
  margin-bottom: 30px;
} 

.collections_list {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.collections_item {
 position: relative; 
 align-items: center;
}

.collections_item img {
  width: 100%;
  height: 100%;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
  padding: 10px;
}

.collections_item img:hover {
  -webkit-filter: grayscale(0);
  filter: grayscale(0); 
  cursor: pointer;
}

.collections_item h4 {
  font-family: Montserrat;
  font-weight: 500;
  font-size: 14px;
  text-align: center;
  margin-top: 0; 
  margin-bottom: 5px;
}

.collection_contaner h2 {
  padding-bottom: 40px;
} 

/*コレクションSP用レスポンシブ*/
@media screen and (max-width: 400px) {

.collections_list {
  flex-wrap: wrap;
  }

.collections_item {
  margin: 10px 0 10px 0;
  }

.collections_item h4 {
  margin-top: 0;
  margin-bottom: 20px;
  }
 }
/*collection ここまで*/

/*Banner Start*/
.banner_contaner {
  margin: 0 auto;
  max-width: 95%; 
  margin-top: 120px;
  margin-bottom: 60px;
}

.banner_list {
  display: flex;
  justify-content: center;
  align-content: center;
}

.banner_list li {
margin: 10px;
}

.banner_list img {
  height: 18vw;
  vertical-align: top;
}

.banner_list a:hover {
  opacity: 0.7;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}

.banner_list2 {
  display: none;
}

/*Bannerレスポンシブ　SP用 Start*/
@media screen and (max-width: 400px) {

.banner_list {
  display: none;
}

.banner_list2 {
  display: block;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.banner_list2 li {
  width: 48%;
 }

 .banner_list2 li {
  margin: 2px;
 }

.banner_list2 li img {
  height: 27.5vw;
  vertical-align: top;
}
}
/*bannerここまで*/


 /*News Start*/
.news_contaner {
  max-width: 100%; 
  display: flex;
  justify-content: flex-start;
  align-content: center;
  margin: 120px 50px 0 50px;
  border-top: 2px solid #a9a9a9;
  border-bottom: 2px solid #a9a9a9;
  width: 90%;
}

.vertical {
  writing-mode: vertical-rl;
}

.news_contaner .contents_title h2 {
  font-family: Raleway;
  font-size:28px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #222; 
  text-align: center;
  margin: 130px 40px 120px 50px; 
  border-right: 1.5px solid #c0c0c0;
  padding: 40px 20px 40px ;  
}

.news_list {
  width: 100%;
  height: auto;  
  margin: 65px 10px 0 30px;  
}

.newsitem {
  display: flex;
  text-align: left;
}

.newsimg img {
  width: 100px;
  height: 100px;
  float: left;
  margin: 0 10px 0px 0;
}

.news_list p {
  font-size: 13px;
  color: #222;
  margin-bottom: 50px;
}

.news_list p span {
 font-family: Montserrat;
  font-size:13px; 
  color: gray;
}

.text_readmore {
  font-size: 12px;
  flex-wrap: nowrap; 
  text-align: right;
  padding-top: 0;
  padding-bottom: 20px;
}

.news_list p:hover {
  text-decoration: underline;
  transition: all 0.2s ease-in;
}

.news_list a:hover {
  color: #222;
  transition: all 0.2s ease-in;
  cursor: pointer;
}


/*news レスポンシブ*/
@media screen and (max-width: 768px) {

.news_contaner {
  width: 95%;
  margin: 0 auto;
  margin-top: 100px;
  border-top: 2px solid gray;
  border-bottom: 2px solid gray;
  display: block;
}


.vertical {
  writing-mode: horizontal-tb;
}
  
.news_contaner .contents_title h2 {
  font-family: Raleway;
  font-size:24px;
  letter-spacing: 0.05em;
  color: #222; 
  text-align: center;
  margin: 20px 40% 50px 40%; 
  border-right: none;
  border-bottom: 1.5px solid #222;
  font-weight: 500;
  padding: 40px 0 10px 0;  
}  


.news_list {
  width: 90%;
  height: auto;  
  margin: 20px 50px 30px 20px;  
}

.newsitem {
  display: flex;
  text-align: left;
  display: block;
}

.newsimg img {
  width: 80px;
  height:80px;
  float: left;
  margin: 0 10px 10px 0;
}

.news_list p {
  font-size: 13px;
  color: #222;
  margin-bottom: 50px;
}

.news_list p span {
 font-family: Montserrat;
  font-size:13px; 
  color: gray;
}

.text_readmore {
  margin: 20px;
}
}
/*Newsここまで*/



/*instagram Start*/
.instagram_contaner {
 margin: 0 auto;
 max-width: 95%;  
}

.instagram_contaner h2 {
  font-family: Raleway;
  font-size:16px;
  letter-spacing: 0.05em;
  color: #222; 
  text-align: center;
  padding-top: 120px;
  margin-bottom: 30px;
  font-weight: 600;  
}

.instagram_list {
  display: flex;
  justify-content: center;
  margin: 0 auto;
}

.instagram_list li {
  margin: 10px;
 } 

.instagram_list li img {
  width: 100%;
  height: 100%;
  vertical-align: top;
}


/*レスポンシブ*/
@media screen and (max-width: 400px) {
.instagram_list {
  width:  100%;
  flex-wrap: wrap; 
}

.instagram_list li {
  width: 48%;
  margin: 0;
  margin-bottom: 5%;
 }

 .instagram_list li {
  margin: 2px;
 }

.instagram_list li img {
  width: 100%;
  vertical-align: top;
}

.insta5 {
  display: none;
}
}
/*instagramここまで*/



/*shop情報 Start*/
.shop_contaner {
  margin: 0 auto;
  width: 95%;
}

.shop_contaner .contents_title h2 {
  margin-bottom: 40px;
}

.shop_contents {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  height: auto;
}

/*shop左　画像*/
.shop_contents_left {
  width: 50%;
}

.shop_contents_left img {
  width: 100%;
  margin: 0 30px 30px 10px;
  vertical-align: bottom;
}

/*shop右　アクセス*/
.shop_contents_right {
  width: 50%;
  margin: 0 20px 0 30px;
}

.shop_contents_right h3 {
  font-family: Raleway;
  /*font-weight: normal;*/
  font-size:14px;
  letter-spacing: 0.05em;
  top: 0;
  margin-bottom: 12px;
}

.shop_contents_right p {
  font-size:12px;
  top: 0;
  margin-bottom: 10px;
}

.google_map {
  position: relative;
  width: 100%;
  padding-bottom: 55%;
  margin-bottom: 30px;
  border: 0.5px solid #a9a9a9;
}

.google_map iframe {
  position: absolute;
  margin-top: auto;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  filter: grayscale(100%);
}

/*レスポンシブ*/
@media screen and (max-width: 768px) {
 .google_map {
  padding-bottom: 46%;
  overflow: hidden;
} 
}

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

.shop_contaner h2 {
  margin-top: 30px;
  margin-bottom: 30px
}

.shop_contents_right h3 {
  margin-top: 15px;
}

.shop_contents {
  display: block; 
  align-items: center;
  text-align: center;
  padding-bottom: 30px;
} 

.shop_contents_left {
  width: 100%;
}

.shop_contents_left img {
  width: 65%;
  margin: 0 10px 0 10px;
}

.shop_contents_right {
  margin: 0 auto;
  width: 90%;
}

.google_map {
  padding-bottom: 55%;
  padding-left:  20px;
  padding-right: 20px;
}
}
/*shopここまで*/


/*topへ飛ばすボタン*/

.to_top {
  position: fixed;
  right: 18px;
  bottom: 30px;
  width: 18px;
  z-index: 100;
  cursor: pointer;
}

.to_top img {
  width: 90%;
}

.to_top:hover {
  transform: translateY(-10px);
  cursor: pointer;
  transition: all 0.2s ease-in;
}

/*footer Start*/

footer {
width:100%; 
background: #808080;
padding: 20px;
}

.footer_contaner {
position: relative;
}

/*フッターロゴ*/
.footer_contaner .footer-logo {
 text-align: center;
 padding: 40px;
 border-bottom: 1px;
}

.footer_contaner .footer-logo a {
  display: inline-block;
}

.footer_contaner .footer-logo img {
 height: 20px; 
}

.footer_contaner .footer_nav {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer_contaner .footer_nav a {
  padding: 15px;
  color: #fff; 
}

.footer_contaner .footer_nav li {
font-family: Montserrat;
font-size: 12px;
}

.footer_contaner .footer_nav img {
  display: inline-block;
  width: 20px;
  padding: 2px;
}

.footer_contaner .footer_copyright_policy {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer_contaner .footer_copyright_policy li {
  color: #fff;
  font-family: Montserrat;
  font-size: 10px;
  padding: 10px;
  font-weight: lighter;
}

.footer_contaner .footer_sns {
  display: none;
}

.footer_contaner .onlinestore{
  display: none;
}

.footer_contaner .footernav {
  display: none;
}

.footer_contaner a:hover {
  cursor: pointer;
}


/*footer　レスポンシブSP用 Start*/
@media screen and (max-width: 400px) { 

.footer_contaner .footer_nav {
  display: none;
}

.footer_contaner .footer_sns {
  display:flex;
  justify-content: center;
  align-items: center;
  padding: 1em;
}

.footer_contaner .footer_sns img {
  width: 20px;
  margin: 10px;
 } 

.footer_contaner .onlinestore {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer_contaner .onlinestore a {
  color: #fff;
   font-size: 12px;
  margin: 10px;
}

.footer_contaner .onlinestore  {
  margin-top: 10px;
  margin-bottom: 10px;
 } 


.footer_contaner .footernav {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer_contaner .footernav a {
  color: #fff;
}

.footer_contaner .footernav p {
  font-family: Montserrat;
  font-size: 12px;
  margin: 10px;
}

.footer_contaner .footer_copyright_policy {
  flex-wrap: wrap;
}
/*フッターここまで*/
/*トップへ飛ばすボタンSP用*/
.to_top {
  position: fixed;
  right: 5px;
  bottom: 30px;
  width: 15px;
  z-index: 100;
}
}
/*トップへ飛ばすボタンここまで*/


/*--------------------------------------
　コンタクトページ（フォーム）Start
---------------------------------------*/
.contact_contaner {
  background-color: #fff;
  width: 100%;
}

.contact_visual {
  top: 0;
  margin: 0 auto;
  position: relative;
}

.contact_visual img {
 width: 100%; 
}

.sp_contact_visual {
  display: none;
}

.contact_contaner .contact_logo {
 position: fixed;
 left: 30px;
 height: 30px;
 top: 1.5%; 
 z-index: 30;
}

.contact_contaner .contact_logo img {
  width: 140px;
}

.contact_contaner .contact_visual h1 {
 font-family: Raleway;
 font-size:32px;
 letter-spacing: 0.05em;
 color: #fff; 
 top: 35%;
 font-weight: lighter;
 position: absolute;
 width: 100%;
 height: 100%;
 padding: 10px 0 0 0;
 text-align: center;
}

.contact-contents {
  padding-top:30px;
  padding-bottom: 80px;
  margin: 0 auto;
  width: 500px;  
}

.contact-contents p {
 font-size: 8px;
 color: #333;
}

.contact_subtitle {
  text-align: center;
  margin-bottom: 30px;
}

form {
  padding: 10px;
}

input {
  box-sizing: border-box;
  margin: 0.6em 0;
  background-color: #e6e6e6;
  border: none;
  padding: 0.75em;
  width: 100%;
  font-size: 13px;
  color: #999;
  border-radius: 1px;
}

input, textarea {
  box-sizing: border-box;
}

textarea {
  margin: 0.6em 0;
  background-color: #e6e6e6;
  border: none;
  padding: 0.75em;
  width: 100%;
  height: 12em;
  font-size: 13px;
  color: #999;
  border-radius: 1px;
} 

input[type="submit"] {
  box-sizing: border-box;
  width: 50%;
  background-color: #a9a9a9;
  border: none;
  color: #fff;
  border-radius: 2px;
  margin: 2em -50% 0 25%;
  
}

/*--------------------------------------
　コンタクトページ　レスポンシブStart
---------------------------------------*/

/*SP用　contactページ・お問い合わせフォームここから*/
@media screen and (max-width: 400px) { 

.sp_contact_visual {
  display: block;
  top: 0;
  margin: 0 auto;
  position: relative;
}

.sp_contact_visual img {
 width: 100%; 
}

.contact_visual {
  display: none;
}

.contact_contaner .sp_contact_visual h1 {
 font-family: Raleway;
 font-size:32px;
 letter-spacing: 0.05em;
 color: gray; 
 top: 130px;
 font-weight: lighter;
 position: absolute;
 width: 100%;
 height: 100%;
 padding: 10px 0 0 0;
 text-align: center;
}

.contact-contents {
  padding-top:100px;
  padding-bottom: 80px;
  margin: 0 auto;
  width: 98%;  
}
}

/*コンタクトページここまで*/











