/*----------------------------------
              base
----------------------------------*/

body{
  font-family:'Cardo', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.03em;
  color: #111;
  line-height: 1.8;
  font-size: 0.85rem;
}

a{color:#111;text-decoration: none;}
a:visited{color:#111;}

.percentage100{width:100%;height:auto;}
.percentage95{width:95%;height:auto;}
.percentage90{width:90%;height:auto;}
.percentage85{width:85%;height:auto;}
.percentage80{width:80%;height:auto;}

.wp#sb-site{
  position: relative;
  transform: none;
}

.main-content{
/*
  padding-top: 59px;
*/
}
.top-link-btn{
  text-align: center;
  padding-top: 1.1em;
}

.top-link-btn a{
  letter-spacing: 0.04rem;
  border: solid 1px #111;
  font-size: 0.75rem;
  padding: 0.5em 1.5em;
  display: inline-block;
}

.top-link-btn a.sp{
  display: none;
}

.content-colum{
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  border: solid 15px #fff;
  border-bottom: none;
}

.content-colum .inr{
  width: 100%;
  height: 400px;
  margin: 0 auto;
  background-position: center;
  background-size: cover;
}

.content-colum.online-salon .inr{
  background-image: url(../assets/img/slide/slide03.jpg);
}

.content-colum.about .inr{
  background-image: url(../assets/img/common/about-kt.jpg);
}

.content-colum.nail .inr{
  background-image: url(../assets/img/common/about-nail.jpg);
}

.content-colum.inner-beauty .inr{
  background-image: url(../assets/img/common/about-ib.jpg?);
}

.content-colum .inr a{
  display: block;
  width: 100%;
  height: 400px;
  box-sizing: border-box;
  text-align: center;
  position: relative;
}

.content-colum .inr .title-box{
  text-align: center;
  padding: 0;
  box-sizing: border-box;
  position: absolute;
  z-index: 10;
  width: 100%;
  top: 31%;
}

.content-colum .inr a .title-box .wrapper-box{
  padding: 2em 1em 1.5em;
  background: rgba(0, 0, 0, 0.4);
  box-sizing: border-box;
  transition: all 0.4s ease;
  color: #fff;
}

.content-colum .inr a:hover .title-box .wrapper-box{
  background: rgba(0, 0, 0, 0.8);
}

.content-colum .inr h1{
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  line-height: 1.2;
  margin-bottom: 1em;
}

.content-colum .inr h1 .sub{
  font-size: 0.9rem;
}

.content-colum .inr .intro-text{
  font-size: 0.75rem;
  letter-spacing: 0.04em;
}


.contact-button{
  text-align: center;
  margin-top: 25px;
}

.contact-button a{
  padding: 5px 15px;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  border: solid 1px #111;
  transition: all 0.4s ease;
  -webkit-transition: all 0.4s ease;
  margin: 0 0 .5em;
  display: inline-block;
}
.contact-button a.jp{
  font-size: 0.7rem;
}

.contact-button a:hover{
  background: #fff;
  color: #000;
}


@media screen and (max-width: 767px) {
  .line-button .image-line-qr{display:none;}
}
.line-button{margin:3em 0 1em;}
.line-button .hx-line-button{
text-align: center;
margin-bottom: 1em;
}
.line-button .image-line-button{
max-width: 230px;
width: 85%;
margin: 0 auto;
}
.line-button .image-line-qr{
max-width: 140px;
width: 45%;
margin: 0 auto;
}
.line-button img{width: 100%;height: auto;}


.about-text{
  line-height: 2;
  max-width: 500px;
  margin: 0 auto;
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph;
}

.top-link-box{
  width: 100%;
  padding: 3em 0 2em;
  box-sizing: border-box;
  text-align: center;
}

.top-link-box .inr{
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  display: inline-block;
}

.top-link-box .inr a{
  transition: all 0.4s ease;
}

.top-link-box .inr a:hover{
  opacity: 0.65;
}

.top-link-box .inr .wholesale-banner{
  float: left;
  margin-right: 4em;
}

.top-link-box .inr .wholesale-banner a{
  display: block;
}

.top-link-box .inr .wholesale-banner a img{
  width: 100%;
  max-width: 350px;
  height: auto;
}

.top-link-box .inr .insta-link-list{
  list-style: none;
  margin: 2em 0;
}

.top-link-box .inr .insta-link-list li{
  text-align:center;
  display:inline-block;
  margin-right: 1.5em;
}

.top-link-box .inr .insta-link-list li a{
  color: #111;
  display:inline-block;
}

.top-link-box .inr .insta-link-list li a img{
  width: 85px;
  height: auto;
}

@media screen and (max-width: 350px) {
  .top-link-box .inr .insta-link-list{
  margin-left: -1em;
  }
  .top-link-box .inr .insta-link-list li{
  margin: .5em;
  }
}


.top-link-box .banner-to-onlineshop{
text-align:center;
}
.top-link-box .banner-to-onlineshop a{
display:inline-block;
width:100%;
max-width:280px;
}
.top-link-box .banner-to-onlineshop img{
width:100%;height:auto;
border:1px solid #444444;
}


.top-link-box .banner-to-contact{
text-align:center;
}
.top-link-box .banner-to-contact a{
font-size: 1rem;
line-height: 1.4;
padding: 1rem;
background: #f9f9f9;
border: 1px solid #a6a6a6;
margin: 0 auto;
max-width:280px;
width:100%;
display: inline-block;
}
.top-link-box .banner-to-contact a .icon{
vertical-align: middle;
margin-bottom: .25rem;
width: 1.4em;
display: inline-block;
}
.top-link-box .banner-to-contact a .icon img{width:100%;height:100%;}


/*----------------------------------
            header
----------------------------------*/

.hd{
  color: white;
  width: 100%;
  position: fixed;
  top:0;
  background: black;
  z-index: 100;
  border-bottom: solid 1px black
}

.hd .inr{
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

.hd .inr .button{
  position: absolute;
  top: 0;
  width: 59px;
  height: 59px;
  outline: none;
  border: none;
  cursor: pointer;
}
.hd .inr .sb-toggle-left{left:0;}
.hd .inr .sb-toggle-right{right:0;}

.hd .button span{
  display: block;
  position: absolute;
  top: 50%;
  left: 47%;
  width: 20px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: white;
  transition: .2s;
}

.hd .button span:after,
.hd .button span:before{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 20px;
  height: 2px;
  background: white;
  transition: .3s;
}

.hd .button span:before{
  margin-top: 6px;
}

.hd .button span:after{
    margin-top: -8px;
}

.hd .button.active span:before{
  -webkit-transform: translateY(21px) rotate(-45deg);
  transform: translateY(27px) rotate(-45deg);
  top: 0px;
}
.hd .button.active span{
  background: transparent;
  opacity: 1;
}
.hd .button.active span:after{
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
}

.hd .button.active span:before{
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}
.hd .button.active span:before,
.hd .button.active span:after{
  margin-top:0;
}
.hd .button.active span:before{
  margin-top:1px;
}

.hd .inr h1{
  text-align: center; 
  padding: 1.3em 0 0.6em;
}

.hd .inr h1 a{
  display: block;
}

.hd .inr h1 a img{
  width: 180px;
  height: auto;
}

/*----------------------------------
          side-nav
----------------------------------*/

.sb-slidebar.sb-active{
  background: #fff;
}

.sb-slidebar.sb-active ul{

}

.sb-slidebar.sb-active ul li{
  border-bottom: solid 1px #cccccc;
}


.sb-slidebar.sb-active ul li a{
  display: block;
  padding: 10px 15px 9px;
  color: #111;
  font-size: 0.85rem;
  text-decoration: none;
  letter-spacing: 0.1em;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}

.sb-slidebar.sb-active ul li a.link{
  text-align: center;
  background: #111;
  color: #fff;
}

.sb-slidebar.sb-active ul li a.link2{
  text-align: center;
  font-size: 0.7rem;
  letter-spacing: 0.07em;
}

.sb-slidebar.sb-active ul li a.link2.sp{
  display: none;
}

.sb-slidebar.sb-active ul li.insta-link{
  display: inline-block;
  width: 100%;
}

.sb-slidebar.sb-active ul li.insta-link a{
  float: left;
  width: 50%;
  box-sizing: border-box ;
  display: block;
  font-size: 0.5rem;
  text-align: center;
}

.sb-slidebar.sb-active ul li.insta-link a:first-child{
  border-right: solid 1px #cccccc;
}

.sb-slidebar.sb-active ul li.insta-link a img{
  width: 30px;
  height: auto;
  vertical-align: middle;
}

.sb-slidebar.sb-active ul li.insta-link a:hover{
  background: #fff;
}


.sb-slidebar.sb-active ul li a:visited{
  color: #111;
}

.sb-slidebar.sb-active ul li a.link:visited{
  color: #fff;
}


.sb-slidebar.sb-active ul li a:hover:not(.link),
.sb-slidebar.sb-active ul li a.hover:not(.link){
  background: #ededed;
}


.sb-slidebar.sb-active ul li a svg{
  margin-right: 3px;
}



/*----------------------------------
            footer
----------------------------------*/

.ft{
  background: white;
}
.ft-copy{
  color: #111;
  font-size: 0.7rem;
  padding: 15px 0;
  text-align: center;
  border-top: solid 1px #cccccc;
}

/*----------------------------------
            slider
----------------------------------*/

.main-slider .slide-logo{
  position: absolute;
  top: 37%;
  text-align: center;
  z-index: 100;
  width: 100%;
}

.main-slider .slide-logo img{
  width: 250px;
  display: inline-block;
}

.main-slider .bottom-arrow{
  position: absolute;
  bottom: 30px;
  text-align: center;
  z-index: 100;
  width: 100%;
  animation: fluffy1 4s ease infinite;
}

@keyframes fluffy1 {
  0% { transform:translateY(0) }
  5% { transform:translateY(0) }
  10% { transform:translateY(-15px) }
  15% { transform:translateY(0) }
  18% { transform:translateY(-15px) }
  22% { transform:translateY(0) }
  50% { transform:translateY(0) }
  100% { transform:translateY(0) }
}


.main-slider .bottom-arrow svg{
  width: 90px;
}

/*----------------------------------
            category
----------------------------------*/

.cate-image{
  width: 100%;
  height: 400px;
  overflow: hidden;
  margin: 0;
  margin-bottom: 3em;
}


.cate-page.online-salon-page .cate-image{background:url(../assets/img/common/page-top-online-salon.jpg?) center center / cover no-repeat;}
@media screen and (min-width: 1000px) {
  .cate-page.online-salon-page .cate-image{background:black url(../assets/img/common/page-top-online-salon.jpg?) center center / 1000px auto no-repeat;}
}
@media screen and (max-width: 499px) {
  .cate-page.online-salon-page .cate-image{background:url(../assets/img/common/page-top-online-salon.jpg?) top center / cover no-repeat;}
  .cate-page.online-salon-page .cate-image{background:url(../assets/img/common/page-top-online-salon.jpg?) top 11% center / 110% auto no-repeat;}
}


.cate-page.sustainable-designer-page .cate-image{background:url(../assets/img/common/page-top-sustainable-designer.jpg?) center center / cover no-repeat;}
@media screen and (min-width: 1000px) {
  .cate-page.sustainable-designer-page .cate-image{background:black url(../assets/img/common/page-top-sustainable-designer.jpg?) center center / 1000px auto no-repeat;}
}
@media screen and (max-width: 499px) {
  .cate-page.sustainable-designer-page .cate-image{background:url(../assets/img/common/page-top-sustainable-designer.jpg?) top center / cover no-repeat;}
  .cate-page.sustainable-designer-page .cate-image{background:url(../assets/img/common/page-top-sustainable-designer.jpg?) top 11% center / 110% auto no-repeat;}
}


.cate-page.contract-page .cate-image{background:url(../assets/img/common/page-top-contract.jpg?) center center / cover no-repeat;}
@media screen and (min-width: 1000px) {
  .cate-page.contract-page .cate-image{background:black url(../assets/img/common/page-top-contract.jpg?) center center / 1000px auto no-repeat;}
}
@media screen and (max-width: 499px) {
  .cate-page.contract-page .cate-image{background:url(../assets/img/common/page-top-contract.jpg?) top center / cover no-repeat;}
  .cate-page.contract-page .cate-image{background:url(../assets/img/common/page-top-contract.jpg?) top 11% center / 110% auto no-repeat;}
}



.cate-image img{
  width: 100%;
  height: auto;
}

.cate-page{
  width: 100%;
  text-align: center;
  margin-bottom: 60px;
  position:relative;
}

.cate-page .cate-image img{margin-top: -50px;}
@media screen and (min-width: 1400px) {
  .cate-page .cate-image img{margin-top: -140px;}
}

.cate-page h1{
  text-align: center;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  padding: 0 5px 5px;
  margin-bottom: 25px;
  border-bottom: solid 1px #3C3C3C;
  display: inline-block;
}

.cate-page h1.jp{
  line-height: 1;
}
.cate-page h1 .jp-sub{
  font-size: 0.7rem;
}
