@charset "euc-jp";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond@1&display=swap');
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

*{margin:0px; padding:0px;}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:bottom;
background:transparent;
font-weight:normal;}

body {line-height:1;}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {display:block;}

ul {list-style:none;}

input, select {vertical-align:middle;}

div {display: block;}

h1, h2, h3, h4, h5, h6, p, address{
	display: block;
	font-size: 100%;
	font-weight: normal;
	font-style: normal;}

img {vertical-align: bottom; border: none;}

table{border-collapse:collapse; width:100%;}

a {outline:none; }
a:focus {outline:none;}
*:focus {
  outline: none;
  border: none;
}


body {
	font-family: 'Noto Serif JP', serif;
	font-size:16px;
	line-height: 1.7;
	/*-webkit-font-smoothing: antialiased;*/
	-webkit-text-size-adjust: 100%;
  
  font-weight: 700;
	color:#000;
  letter-spacing: 1px;}

p,li,span,h2,h3,h4,h5{
    transform: rotate(0.03deg);/*?&#150;&#135;å­&#151;?&#130;·ã&#131;£ã&#130;?&#131;¼å?å¿&#156;*/}


.font_gara{font-family: 'EB Garamond', serif;}

a,a:visited,a:link,a:active{
  color:#000 !important;
  text-decoration:none !important;}
  
a img{transition: 0.5s all;}

a:hover{
  text-decoration: none!important;
	opacity:0.5 !important;
	transition: 0.5s all;
  color:#000;}
.bold{font-weight: bold;}
  
img{
	max-width: 100%;
	height: auto;
}

.Contents{
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}
.Container{
  overflow: hidden;
  padding-bottom: 150px;
}
.Contents_wrapper{padding-top: 80px;}

@media screen and (min-width:768px){.pc_hidden{display: none;}}
@media screen and (max-width:767px) {.sp_hidden{display: none;} body{letter-spacing: 1px;} .Container{padding-bottom: 50px;}.Contents_wrapper{padding-top: 40px;}}
@media screen and (max-width:320px){body{font-size: 14px;}}

/*Hack */
.clearfix:after{
    content: ""; 
    display: block; 
    clear: both;}
.clearfix {zoom:1;}


/*////////////////////*/

/*header*/
.header{
  position: relative;
}

.icon_contact{
  position: absolute;
  right: 110px;
  top: 30px;
  width: 70px;
  height: 70px;
}
.icon_cart{
  position: fixed;
  right: 30px;
  top: 30px;
  z-index: 999 !important;
}

.icon_contact a,
.icon_cart a{
  display: block;
  width: 70px;
  height: 70px;
  border-radius: 70px;
  position: relative;
}
  .icon_contact a{background: #37425B;}
  .icon_cart a{background:#c6a801;}

.icon_contact img,
.icon_cart img{
  width: 30px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%)}
  
.cart_count{
  position: absolute;
  font-size: 18px;
  background:#EE3201;
  width: 30px;
  color: #FFF;
  text-align: center;
  line-height: 30px;
  height: 30px;
  border-radius: 30px;
  font-family: 'EB Garamond', serif;
  top: -5px;
  right: -5px;
}  

.Search_inner{
  position: relative;
}
.Search button.search_icon{
  background: none;
  border: none;
  cursor: pointer;
  position: absolute;
  top: 7px;
  left: 10px;
}
input.Search_txt{
  background: #EEE;
  border:none;
  width: 170px;
  height: 36px;
  box-sizing: border-box;
  padding: 5px 10px 5px 35px;
  border-radius: 36px;
}

@media screen and (min-width:1001px){
  .shop_logo{
    text-align: center;
    padding: 40px 0;
  }
  .sp_nav{display: none;}
  .pc_nav{
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px 30px 20px;
    text-align: center;
  }
  .Search{display: inline-block; width: 170px;}
  
  .pc_nav ul{ display: inline-block; vertical-align: 4px;}  
  .pc_nav ul li{
    margin: 0 1vw;
    display: inline-block;
  }
  .pc_nav ul li.nav_guide{
    position: relative;
    padding-left: 2vw;
  }
  .pc_nav ul li.nav_guide:before{
    content: '';
    width: 1px;
    height: 40px;
    background: #CCC;
    position: absolute;
    left: 0;
    top: -5px;
  }
}

@media screen and (max-width:1000px) {
    .shop_logo{padding: 15px 0 10px 10px;}
    .shop_logo img{
      width: 60%;
      max-width: 200px;
    }
    .pc_nav,.icon_contact{display: none;}
    
    .sp_nav_inner{
      padding: 40px 30px;
      text-align: center;
    }
    .sp_logo{text-align: center;}
    .sp_logo img{
      width: 80%;
      max-width: 300px;
    }
    .sp_nav ul{margin-bottom: 40px;}
    .sp_nav ul li{
      margin: 4vw 0;
    }
    
    .sp_nav ul li.nav_guide{border-top:1px solid #CCC; padding-top: 6vw;}
    
    input.Search_txt{width: 100%; background-color: #FFF;}
    .Search{max-width: 400px; margin: 0 auto;}
    
    .icon_cart{top: 15px; right: 10px;}
    .icon_cart a{width: 44px; height: 44px;}
    .icon_cart img{width: 20px;}
    .cart_count{font-size: 12px; width:20px; height:20px; line-height: 20px;}
    
    .drawer-hamburger {
      position: fixed;
      z-index: 999 !important;
      top: 12px;
      right: 70px;
      display: block;
      width: 25px;
      box-sizing: border-box;
      
      height: 50px;
      -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
      transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
      border: 0;
      outline: 0;
      background: none;
    }

    .drawer-hamburger-icon {
      position: relative;
      display: block;
      margin-top: 0px;
    }

    .drawer-hamburger-icon,
    .drawer-hamburger-icon:before,
    .drawer-hamburger-icon:after {
      width: 100%;
      height: 2px;
      -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
      transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
      background-color: #000;
    }

    .drawer-hamburger-icon:before,
    .drawer-hamburger-icon:after {
      position: absolute;
      top: -10px;
      left: 0;
      content: ' ';
    }
    .drawer-hamburger-icon:after {top: 10px;}

    .drawer-close{
      font-size: 32px;
      border:none;
      z-index: 999;
      background: none;
      top: 10px;
      right: 10px;
      position: absolute;
      font-family: 'Noto Sans JP', "?&#131;¡ã&#130;¤ã&#131;?&#130;?", Meiryo, sans-serif;
      font-weight: 100;
    }

    .drawer {
      position: fixed;
      top: 0;
      left: 0;
      opacity: 0;visibility: hidden;
      z-index: 9999;
      overflow-x: hidden;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      width: 100%;
      height: 100%;
      background:#f7f6ee;
      
      transition-property: all;
      transition-duration: 0.3s;
    }
    .drawer.open {
      opacity: 1;
      visibility: visible;
    }
}



/*footer*/
.footer{
  background: #f7f6ee;
  padding: 100px 0 50px 0;
  font-size: 14px;
}
.foot_logo{
  margin-bottom: 40px;
}
.Copyright{
  text-align: center;
  margin-top: 40px;
}
.PageTop{
  position: fixed;
  right: 40px;
  bottom: 100px;
}
address{
  line-height: 1.8;
}
address a{
  border-bottom: 2px solid #000;
  padding-bottom: 3px;
}
address a:hover{
  border-color:#c6a801;}

@media screen and (min-width:1001px){
  .footer_l{
    float: left;
    width: 42%;
  }
  .footer_r{
    float: right;
    width: 42%;
  }
  .footer_r ul{
    display:inline-block;
    margin-right: 3vw;
  }
  .footer_r ul li{margin-bottom: 30px;}
  
}
@media screen and (max-width:1000px){
  .footer{padding: 20px 0;}
  address{font-size: 12px;}
  .footer_r{margin-bottom: 40px;}  
  .foot_logo{width: 70%; max-width: 300px; margin: 0 auto 30px auto;}
  .footer_r ul{
    display:inline-block;
     font-size: 12px;}
  .footer_r ul.foot_menu1{width: 32%;}
  .footer_r ul.foot_menu2{width: 58%;}
  .footer_r ul li{margin-bottom: 20px;}
  .PageTop{
    right: 20px;
    bottom: 100px;
    width: 8px;
  }
}


/*kv*/
.kv{margin-bottom: 100px;}
.slick-dots{
  text-align: center;
  margin-top: 30px;
}
.slick-dots li{
  display: inline-block;
  margin: 0 10px;
}
.slick-dots button{
  width: 80px;
  height: 2px;
  background: #CCC;
  border:none;
  text-indent: -9999px;
  overflow:hidden;
}
.slick-dots li.slick-active button{
  background: #c6a801;}


@media screen and (max-width:767px){
  .kv{margin-bottom: 50px;}
  .kv_item img{
    max-width: 150% !important;
    margin-left: -25%;
  }
  .slick-dots li{margin: 0 5px;}
  .slick-dots button{width: 40px;}
}

/*Products_list////////////////*/
.Products_list a{display: block;}
.Products_list_name{
  font-size: 20px;
  margin: 10px 0 5px 0;
}
.Products_list_ruby{
  font-size: 14px;
  color: #c6a801;
  margin-bottom: 5px;
}
.Products_list_price{font-size: 14px;}
.Products_list_sold{
  background:#CCC;
  color: #FFF;
  font-size: 14px;
  display: inline-block;
  padding: 1px 10px;
}

.Products_list_img{
  width: 100%;
  height: 0;
  padding-top: 100%;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
.Products_list_img img{
  position: absolute;
  height: 100%;
  width: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.img_size{}
.img_size h2{
  text-align: center;
  font-size: 26px;
  margin-bottom: -20px;
}

.Pager{
  padding-top: 30px;
  max-width: 300px;
  margin: 0 auto;
}

.pager_prev{
  float: left;
  
}
.pager_prev a{
  padding-left: 40px;
  position: relative;
}
.pager_next{
  float: right;
}
.pager_next a{
  padding-right: 40px;
  position: relative;
}

.pager_prev a:before{
  content: '';
  display: block;
  width: 18px;
  height: 18px;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  position: absolute;
  left: 5px;
  top: 0;
  transform: rotate(-45deg);
}
.pager_next a:after{
  content: '';
  display: block;
  width: 18px;
  height: 18px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  right: 5px;
  top: 0;
  transform: rotate(45deg);
}


@media screen and (min-width:768px){
  .Products_list{
    width: 30%;
    float: left;
    margin-bottom: 60px;
    margin-right: 5%;
  }
  .Products_list:nth-of-type(3n){margin-right: 0;}
  .img_size{
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
    margin-top: 100px;
  }
}
@media screen and (max-width:1000px) and (min-width:768px){
  .Products_list_name{font-size: 20px;}
  .Products_list_ruby{letter-spacing: 0px;}
}
@media screen and (max-width:767px){
  .Products_list{margin-bottom: 40px; width: 48%; float: left;}
  .Products_list:nth-of-type(2n){margin-left: 4%;}
  .Products_list_img{border-radius: 5px;}
  .Products_list_name{font-size: 16px;  margin: 5px 0;}
  .Products_list_ruby{font-size: 10px; letter-spacing: 0px;}
  .img_size{margin-top: 50px;}
  .img_size h2{font-size: 16px;}
}


/*common*/
.center_btn{
  text-align: center;
}
.btn_ubusuna{
  display: inline-block;
  text-align:center;
}

.btn_ubusuna a{
  color:#FFF !important;
  display: block;
  background:#37425C;
  padding: 20px;
  line-height: 1;
  border-radius: 50px;
  position: relative;
}
  .btn_ubusuna.btn_ye a{background: #B79E1B;}
  
.btn_ubusuna a:after{
  content: '';
  display: block;
  width: 18px;
  height: 4px;
  border-bottom: 1px solid #FFF;
  border-right: 1px solid #FFF;
  transform: skew(45deg);
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  transition: 0.3s;
  margin: auto;
}
.btn_ubusuna a:hover:after{right: 15px;}

.sttl_line{
  
  text-align: center;
  
}
.sttl_line h3{
  padding: 30px 20px 40px 20px;
  display: inline;
  font-size: 26px;
  -ms-writing-mode: tb-rl;
  writing-mode:vertical-rl;
  border-top: 2px solid #000;
  text-align: left;
}

.sttl_line_h h3{
  font-size: 26px;
  text-align: center;
  position:relative;
  padding-top: 20px;
  margin-bottom: 50px;
}
.sttl_line_h h3:before{
  content: '';
  width: 50px;
  height: 2px;
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  background: #000;
  margin: auto;}

.FreeContents{
 
}

.FreeContents_block{
  
  margin-bottom: 60px;
}
.FreeContents_block + .FreeContents_block{
  border-top: 1px solid #EEE;
  padding-top: 60px;
}


.FreeContents h4{
  font-size: 20px;
  margin-bottom: 20px;
  border-bottom: 2px solid #c6a801;
}
.FreeContents h5:before{
  content: '';
  width: 8px;
  height: 8px;
  display: block;
  border-radius: 6px;
  background: #c6a801;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
}
.FreeContents h5{
  color: #c6a801;
  padding-left: 20px;
  font-size: 18px; margin-bottom: 20px;
  }

.FreeContents section + section{
  margin-top: 60px;
  
}

.FreeContents p{
  margin-bottom: 30px;
  font-family: 'Noto Sans JP',sans-serif;
  font-size: 14px;}

.FreeContents table{
  font-family: 'Noto Sans JP', sans-serif;
  border-top: 1px solid #CCC
}

.FreeContents table th,
.FreeContents table td{
  font-size: 14px;
  text-align: left;
  letter-spacing: 0;
  vertical-align: top;
  padding: 10px;
  border-bottom: 1px solid #CCC
}
.FreeContents table th{
  white-space: nowrap;
  padding-right: 40px;
}

.caution_box{
  background: #F6F5EE;
  padding: 20px;
  border-radius: 10px;
  margin-bottom: 30px;
}
.caution_box p{margin-bottom: 0;}
.caution_box p.ttl_caution{
  color:#EE3300;
  position: relative;
  padding-left: 40px;
  font-weight: bold;
  margin-bottom: 20px;
}
.caution_box p.ttl_caution span{
  color: #FFF;
  background: #EE3300;
  width: 25px;
  height: 25px;
  border-radius: 25px;
  top: 0;
  line-height: 25px;
  bottom: 0;
  font-style: italic;
  margin: auto;
  left: 0;
  display: block;
  position: absolute;
  text-align: center;
}
.ContentsMenu{
  text-align: center;
  margin-bottom: 100px;
}
.ContentsMenu li{
  display: inline-block;
  padding-left: 30px;
  position: relative;
}

.ContentsMenu li + li:before{
  content: '';
  display: block;
  width: 1px;
  height: 30px;
  background: #CCC;
  position: absolute;
  top: 0;
  left: 10px;
}




  @media screen and (min-width:768px){
    .btn_ubusuna a{min-width: 250px;}
    .btn_ubusuna + .btn_ubusuna{margin-left: 20px;}
    .box_half{float: left; width: 47%;}
    .box_half + .box_half{margin-left: 6%;}
  }
  
  @media screen and (max-width:767px){
    .btn_ubusuna{display: block; max-width: 250px;}
    .center_btn .btn_ubusuna{margin: 0 auto;}
    .btn_ubusuna + .btn_ubusuna{margin-top: 20px;}
    .sttl_line h3{
      padding: 20px 15px 30px 15px;
      font-size: 20px;
     }
     .sttl_line_h h3{font-size: 20px;}
     .box_half + .box_half{margin-top: 30px;}
     
     .FreeContents table th,
     .FreeContents table td{
        display: block;
      }
      .FreeContents table th{
        border-bottom: none;
        font-weight: bold;
      }
      
      .ContentsMenu{
        text-align: center;
        margin-bottom: 100px;
      }
      .ContentsMenu li{
        font-size: 14px;
        padding-left: 0;
        margin-bottom: 5px;
      }

      .ContentsMenu li + li:before{
        left: -3px;
        height: 25px;
      }

  }
  
/*FAQ*/
.Question,.Answer{
  position: relative;
  padding-left: 50px;
}
.Question{font-weight: bold;}
.Answer{
  padding-bottom: 30px;
  margin-bottom: 30px;
  border-bottom: 1px solid #CCC;
}

.Question:before,
.Answer:before{
  font-family: 'EB Garamond', serif;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  display: block;
  color: #FFF;
  text-align: center;
  line-height: 30px;
  position: absolute;
  top: 0;
  left: 0;
}
  
.Question:before{
  content: 'Q';
  background: #37425B;
}

.Answer:before{
  content: 'A';
  background:#EE3300;
}
  /*fadein*/  
@keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1}}

@-webkit-keyframes fadeIn{
    0% {opacity: 0;}
    100% {opacity: 1}}

.top_fadein{animation: fadeIn 2s ease 0s 1 normal;}

.fadein-y {
  opacity: 0;
  transform : translate(0, 40px);
  transition : all 1500ms;
  }

.fadein-x{
  opacity: 0;
  transform : translate(40px, 0);
  transition : all 1500ms;
  }
.fadein-x2{
  opacity: 0;
  transform : translate(-40px, 0);
  transition : all 1500ms;
  }  

.fadein-y.scrollin,.fadein-x.scrollin,.fadein-x2.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

.fadein {
  opacity: 0;
  transition : all 1500ms;
  }

.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}  
/*insta*/
.insta_gallery{
  margin-bottom: 100px;
}
.insta_gallery h2{text-align: center; margin-bottom: 30px;
  font-size: 26px;
  letter-spacing: 6px;}
#instafeed{margin-bottom: 30px;}
.insta{
  position: relative;
  float: left; width: 24%; margin: 0 0.5%; margin-bottom: 10px;}
.insta a{
  width: 100%;
  height: 0;
  padding-top: 100%;
  position: relative;
  display: block;overflow: hidden;
}

.insta a img{
  position: absolute;
  top: 50%;
  border-radius: 5px;
  left: 50%;
  transform: translate(-50%,-50%);
  
  }
.btn_more{  
text-align: center;}
  
.btn_more a{
  border-bottom: 2px solid #000;
  padding: 10px 35px;
}   
 .foot_sns{
  margin: 20px 0;
}
.foot_sns li{
  display: inline-block;
  margin: 0 5px;
}
.foot_sns li img{
  width: 20px;
} 
  @media screen and (max-width:767px){
    
    .insta_gallery h2{font-size: 20px;}
    .insta{width: 48%; margin: 0 1%; margin-bottom: 8px;}
  }  
.Info_close{
  text-align: center;
  margin-bottom: 60px;
  border: 2px solid #DE0715;
  padding: 20px;
}
.Info_close .Info_close_ttl{
  font-size: 24px;
}

.Info_close_img{
  margin: 20px 0;
}
.Info_close_txt{
  font-size: 16px;
  line-height: 2;
}
@media screen and (max-width:767px){
    .Info_close .Info_close_ttl{font-size: 18px;}
    .Info_close_img img{width: 100px;}
  .Info_close_txt{font-size: 14px;}}