/* CSS Document */
@charset "utf-8";

/* reset-css
---------------------------------------------------------------------------------------------------------------------*/
html, head, body, h1, h2, h3, h4, h5, h6, ul, ol, li, a, p, dl, dd, dt, div, span, img, hr, strong, em, table, tbody, caption, tr, th, td, address {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
	font-weight:500;
    font-style: normal;
    text-decoration: none;
	word-break:normal;
}
.reset{
	clear:both;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{max-width:100%;border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}
img{ /*width:100%;*/ height:auto;}

*{
    box-sizing: border-box;
}

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* background: transparent; */
  /* border: none; */
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type='checkbox'],
input[type='radio'] {
  /* display: none; */
}

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/* body　
---------------------------------------------------------------------------------------------------------------------*/
body{
	font-family:"游ゴシック体", YuGothic,"游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size:14px;
	font-weight:500;
	height: 100%;
    border-radius: ;
}
p {font-size:12px;margin:0;line-height:1.8;}
a {text-decoration:none;color: #000;}

#products{ padding-top:90px; margin-top:-90px;}
#introduction{ padding-top:90px; margin-top:-90px;}
#wrap{ width:100%;background-color:#fff;z-index: 99;}
.container {width: 96%;margin: 90px auto 0 auto;overflow:hidden;} 
#main { width:76%; margin:0 12% 0 12%; position:relative;}

.header_souryou {
    font-size: 14px;
    text-align: center;
    padding: 10px 0;
    letter-spacing: 1px;
    font-weight: bold;
    padding-top: 100px;
}

.header_souryou span {
    /* color: #c0014c; */
    color: #d42222;
    font-weight: bold;
}

.shop-headerlogo{
	display: block;
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	height:31px;
}
h2 {
	font-weight: bold;
	margin-bottom: 15px;
	margin-top: 38px;
	font-size: 16px;
}
.block-revealer__element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0;
}

/*英語共通フォント*/
.st-en{
    font-family: 'Lato', sans-serif;
    letter-spacing: 1px;
}

.english {
    font-size: .9vw;
    color: #9b9b9b;
	margin-top: 5px !important;
}

.page_link{ margin-top:-89px; padding-top:89px;}

.notice{
	width: 98%;
    max-width: 1200px;
    border: 2px solid #000;
    padding: 1%;
    margin: 20px auto;
    box-sizing: border-box;
}
.notice p{
    margin: 0;
    padding: 0;
	font-size: 14px;
    line-height: 1.6;
    text-align: left;
}
.notice p.title{
	color:#a00000;
}

/* header
---------------------------------------------------------------------------------------------------------------------*/
#header {
    width: 100%;
    position: fixed;
    background-color: rgba(35,24,22,0.9);
	z-index: 9999;
}
#nav {
	width: 95%;
	max-width: 1200px;
    margin: 35px 0 0 5%;
    height: 55px;
}

.second-nav{
display: flex;
justify-content:flex-end;
position:absolute;
z-index:2000;
right:12px;
top:12px;
}

.second-nav li{
    margin:0 10px;
}



.nav_menu {
	width:100%;
    display: flex;
}


#header li.menu-item {
    width: 13.5%;
    text-align: center;
	padding-top: 15px;
    font-family: 'Lato', sans-serif;
    letter-spacing: 2px;
}

#header li.menu-item_home {
    width: 18%;
	margin: -1% 14% 0 0;
}
#header li.menu-item_home h1,
#header li.menu-item_home p{
    width:100%;
	height:50px;
    background: url(https://john.itembox.design/item/img/common/johnsblend_logo_wh.svg) no-repeat center center/contain;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
#header li.menu-item_home h1 a,
#header li.menu-item_home p a{
    display: block;
    height: 50px;
}

#header li.menu-item_home img {
	width: 100%;
    display: block;
}

#header .nav_menu li > a,
#header .nav_menu li > a p{
    font-size: 15px;
    color: #fff;
	margin: 0;
	user-select: none;
}
#header .nav_menu li > a:hover,
#header .nav_menu li > a p:hover {
	opacity:0.6;
	transition: 0.5s;
}


.products_trigger:hover {
	cursor:pointer;
}

.products_menu{ 
	width: 100%;
    margin: 0;
    padding: 30px 5%;
    position: fixed;
    z-index: 9998;
    background-color: rgba(35,24,22,0.9);
	/*top: -800px;*/ 
	top: -1000px; 
	transition: .5s;
	text-align: left;
}
.products_menu_show{
	top:120px;
	transition:.5s;
}
.products_menu ul{ 
	width:22%; /*	width:20%; */
	float:left;
	color:#fff;
}

.products_menu ul.new_category {
	border-right: 1px solid #888888;
}
.products_menu ul.item_category {
	margin-bottom:50px;
}


.products_menu ul li{ 
    width: 84%;
    margin: 0px 8%;
    border: none;
    padding: 0;
}
.products_menu ul li p:hover {
    opacity: 1;
    transition: 0.5s; 
}
.products_menu ul li p,
.products_menu ul li h4{
	font-size:11px;
	line-height: 2.2;
	color:#fff;
	display: inline-block;
	opacity:.7;
}
.products_menu ul li.title p,
.products_menu ul li.title h3{
	font-size:15px;
	color:#fff;
	border-bottom:1px solid #fff;
	margin-bottom: 5px;
	user-select: none;
	opacity:1;
	display: block;
    font-family: 'Lato', sans-serif;
    letter-spacing: 1px;
}
.products_menu .button{
    border:1px solid #000;
	opacity:.8;
	padding: 0;
    max-width:60px;
    position: absolute;
    right:35px;
    bottom:35px;
}


.products_menu .button img{
	width: 100%;
}
.products_menu .button:hover{
	opacity:1;
	transition:.5s;
	cursor:pointer;
}


.products_menu ul.header_search {
	width: 100%;
    height: 30px;
    overflow: hidden;
    margin: 5px 0;
}
.products_menu ul.header_search li {
    width: 100%;
    margin: 0;
}
.products_menu ul.header_search li a{
    float: right;
}
.products_menu ul.header_search input {
	width: 200px;
    height: 25px;
    float: right;
    padding-left: 10px;
    font-size: 12px;
    line-height: 25px;
}

#headarea{ display:none;}



@media screen and (max-width: 768px) {/************ for SP*************/
#header li.menu-item_home {
    width: 20%;
    margin:0 3% 0 0;
}
#header li.menu-item {
    width: 15%;
}

}

@media screen and (min-width: 481px) {/************ for PC****************/
.pc_none {
	display:none !important;
}

}
@media screen and (max-width: 480px) {/************ for SP***************/
/*html{-webkit-overflow-scrolling: touch;}*/
.sp_none {
	display:none !important;
}

body{
	/*background-color: #fff;*/
}

.container {width: 96%;margin: 60px auto 0 auto;} 
.container01 {width: 100%;margin: 0;overflow: hidden;}

.header_souryou {
padding-top: 70px;
}

#main {
    width: 96%;
    margin: 0 2% 0 2%;
    position: relative;
}

.page_title_inner h1{
	font-size: 26px;
	padding: 0 10px;
	line-height: 1.5;
}
.page_title_inner p,
.page_title_inner h2{
    font-size: 26px;
    padding: 0;
    margin: 50px 0 0px 0;
}
.title_line {
    margin: 0 auto 30px auto;
}

h2 {
    font-size: 16px;
	font-weight: bold;
	margin: 0 0 15px 0;
}
.page_link{     
	margin-top: -80px;
    padding-top: 80px;
}
.notice {
    width: 98%;
    border: 1px solid #000;
    margin: auto;
    padding: 2%;
    box-sizing: border-box;
}
.notice p {
    font-size: 12px;
    line-height: 1.6;
}

/* header
---------------------------------------------------------------------------------------------------------------------*/
#nav {
    width: 100%;
    margin: 0;
}
#header li.menu-item_home {
    width: 50%;
    margin: 2% 25% 0 25%;
}
header .show {
    left: 0;
    transition: .5s;
}
.header-nav{display:none;}
.menu-item {display:none;}
.products_menu {display:none;}

/* header
---------------------------------------------------------------------------------------------------------------------*/
header{
	width: 100%;
    position: fixed;
    z-index: 9999;
	margin:0;
	top: 0;
}

#headarea{
	width: 100%;
    height: 60px;
    background-color: rgba(35,24,22,0.9);
	display:block;
}
header #logo {
    width: 40%;
    /*margin: 0 30%;*/
    margin-left: 50px;
    height: 40px;
    position: absolute;
    /*top: 25%;*/
    top: 15%;
    background: url(https://gigaplus.makeshop.jp/johnsblend/img/site_img/logo_wh.png) no-repeat center center/contain;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
header #logo a{
    height: 40px;
    display: block;
}
header .button-toggle01{
	width: 85px;
    color: #fff;
    text-align:left;
    padding: 3px 0 3px 5%;
    position: absolute;
    top: 33px;
    left: 0;
    background-color: #3e3a39;
}
header .button-toggle02{
    width: 85px;
    color: rgba(7,90,44,0.9);
    text-align: right;
    padding: 3px 5% 3px 0;
    position: absolute;
    top: 33px;
    right: 0;
    background-color: #3e3a39;
}
header .menu01{
	width:100%;
	height: calc( 100% - 60px );
	position: fixed;
    top: 60px;
    background-color: rgba(35,24,22,0.9);
    color: #ffffff;
    /*border-top: 1px solid #fff;*/
	left:-100%;
	transition:.5s;
	overflow: hidden;
	background-color:#fff;
}

header .menu01 .searchArea,
header .menu01 .icon{
	background-color:#fff;
	border-bottom: 1px solid #eeeeee;
}
header .show{
	left:0;
	transition:.5s;
}
header .menu01 ul{
	overflow: auto;
	width:100%;
	/*padding-right: 17px;*/
	height: 95%;
	margin: 0;
	/*overflow-y: scroll;*/
	/*-webkit-overflow-scrolling: touch;*/
}

/* header .menu01 li img{
    width: 35%;
    margin-top: 5px;
} */


header .menu01 a,
header .menu01 a h3{
	display: block;
    padding: 0;
    height: auto;
    line-height: 30px;
    font-size: 14px;
    margin: 0;
} 


header .menu01 .category {
    width: 100%;
    height: 40px;
    padding: 0 5%;
    background-color: #eeeeee;
    border: none;
}
header .menu01 p {
    width: 100%;
    font-size: 17px;
    line-height: 40px;
    font-weight: bold;
    color: #231816;
    text-align: left;
    border:none;
    font-family: 'Lato', sans-serif;
    letter-spacing: 2px;
}

.fl_pagetop {
    width: 30px;
    right: -5px;
    top: 90px;
}

.english {
    font-size: 3vw;
}

.spmenu-iconlist{
  display: flex;
  background:#fff;
}

header .menu01 li {
	width:100%;
    float: left;
    text-align: left;
	position:relative;
	/*border-bottom: 1px solid #eeeeee;*/
}

header .menu01 li span{
    font-size: 12px;
    opacity: .8;
    padding-left: 10px;
    font-family: 'Lato', sans-serif;
    letter-spacing: 1px;
}

header .menu01 li.sns_link {
    width: 12%;
    margin: 0 4%;
    float: left;
    text-align: left;
    position: relative;
}
header .menu01 li.link01 {
	margin-left: 23%;
}
header .menu01 li.sns_link img {
    width: 100%;
    margin-top: 10px;
}
header .menu01 li.right-arrow a:after {
    content: "";
    position: absolute;
    right: 5%;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 7px;
    height: 7px;
    border-top: 1px solid #231816;
    border-right: 1px solid #231816;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.topmenu {
	position: absolute;
	top: 10px;
    left: 10px;
}

header .menu01 li.menu_img01{
	width:45.5%;
	float:left;
	background-color:#fff;
	float:left;
	margin:15px 3% 15px 3%;
	border-bottom: none;
}
header .menu01 li.menu_img02 {
	width:45.5%;
	float:left;
	background-color:#fff;
	float:left;
    margin:15px 3% 15px 0;
	border-bottom: none;
}

header .menu01 li.right-arrow {
	width: 100%;
    padding: 0 5%;
    background-color: #fff;
    border-bottom: 1px solid #eeeeee;
}
header .menu01 li.bottom{
	border-bottom:none;
}
header .menu01 li.right-arrow a {
    font-size: 14px;
    color: #000;
    line-height: 40px;
	line-height: 40px;
}
header .menu01 li.menu_img01 a,
header .menu01 li.menu_img02 a {
    font-size: 14px;
    color: #000;
	padding: 0;
    text-align: center;
    line-height: 1.7;
}
header .menu01 li.menu_img01 a p,
header .menu01 li.menu_img02 a p{
    font-size: 13px;
    line-height: 1.7;
    text-align: center;
    color: #000;
}
header .menu01 li.menu_img01 a img,
header .menu01 li.menu_img02 a img{
	width:100%;
	float:left;
}

.snsmenu{
    display: flex;
    justify-content: center;
    padding-bottom: 80px;
}

.snsmenu p{
    max-width:50px !important;
    margin:20px 8px 0;
}


/* menu_trigger */
.material-icons{ display:block;z-index: 9999;}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
  cursor:pointer;
}
.menu-trigger {
    position: relative;
    width: 25px;
    height: 20px;
}
.menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    /*border-radius: 1px;*/
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
    top: 9px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger::after {
    position: absolute;
    left: -4px;
    bottom: -19px;
    content: 'MENU';
    display: block;
    width: 100%;
    color: #fff;
    font-size: 10px;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    transition: all .4s;
    font-family: 'Lato', sans-serif;
    letter-spacing: 1px;
}
.menu-trigger.active::after {
  content: 'CLOSE';
  bottom: -19px;
}


.menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-9px) rotate(45deg);
}

.switch_sp .spnav-ttl{
    font-size: 10px;
    font-family: 'Lato', sans-serif;
    letter-spacing: 1px;
}
   
/* 削除？？

#multilingual {
	width: 31%;
    right: 0;
    top: 3px;
    font-size: 3vw;
}
#multilingual p {
    font-size: 3vw;
    line-height: 3vw;
    margin-bottom: 4px;
}
#multilingual span {
    font-size: 3vw;
    line-height: 3vw;
}
#multilingual label {
    width: 98%;
    margin: 1%;
    float: left;
    padding: 0.5%;
    height: 20px;
} */

}


/* footer
---------------------------------------------------------------------------------------------------------------------*/
footer {
	width:100%;
	/*max-height: 450px;*/
	position: relative;
    padding: 140px 0 0 0;
    overflow: hidden;
    z-index: 99;
    /*background-color: #fff;*/
	color:#fff;
}
.footer_top {
    width: 180px;
    position: absolute;
    top: 5px;
    right: 2%;
    z-index: 0;
    transition: .3s;
    display: block;
}
.footer_top:hover{
    top: 0;
	transition:.5s;
}
.footer_top img{
    width: 100%;
}

.footer_inner01 {
    padding: 0 5%;
    width: 100%;
    height: 500px;
    background-color: #231816;
    position: relative;
    z-index: 10;
    overflow: hidden;
}
.footer_home {
    width: 20%;
    display: block;
    position: absolute;
	top: 45px;
    left: 5%;
    bottom: 30px;
}
.footer_home img{ 
    width: 100%;
    max-width: 240px;
}
.footer_cat {
	width: 70%;
    text-align: right;
    margin-top: 50px;
    position: absolute;
    right: 5%;
    bottom: 30px;
}
.footer_cat a {
    display: inline;
    color: #fff;
    font-size: 15px;
    line-height: 1.0;

    /* line-height: 25px; */
	opacity:.6;
}
.footer_cat a:hover{
	opacity:1;
	transition:.5s;
}
hr.footer_line {
    height: 1px;
    background-color: #666666;
    clear: both;
    margin-top: 400px;
}

.footer_cat {
    top: 60px;
    width: 70%;
    text-align: left;
    margin-top: 0;
    position: absolute;
    right: 5%;
}
.footer_cat a {
    display: inline;
    color: #fff;
    font-size: 12px;
    line-height:  1.0;
    opacity: .7;
}
.footer_cat ul.cat01 {
    width: 45%;
    float: left;
    margin-left: 5%;
}
.footer_cat ul.cat02 {
    width: 45%;
    float: left;
    margin-left: 5%;
}
.footer_cat ul.cat03 {
    width: 45%;
    float: left;
    margin-left: 5%;
}
.footer_cat ul.cat01 li.title,
.footer_cat ul.cat02 li.title,
.footer_cat ul.cat03 li.title{
	width: 100%;
    font-size: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #666666;
    height: 30px;
	margin-top: 0;
    font-family: 'Lato', sans-serif;
    letter-spacing: 1px;
}
.footer_cat ul.cat01 li{
	width: 50%;
	float:left;
	/* height: 20px; */
    height:auto;
    line-height: 1.2;
	margin-top: 10px;
}
.footer_cat ul.cat02 li{
	width:50%;
	float:left;
    line-height: 1.2;
    height:auto;
	/* height: 22px; */
	margin-top: 12px;
}
.footer_cat ul.cat03 li{
	width:50%;
	float:left;
    line-height: 1.2;
    height:auto;
	/* height: 22px; */
	margin-top: 12px;
}

.footer_inner02 {
    padding: 0 5%;
    width: 100%;
    height: 220px;
    background-color: #231816;
    position: relative;
    z-index: 10;
    overflow: hidden;
}
.ft_company {
    width: 30%;
    position: absolute;
    left: 5%;
    bottom: 50px;
    text-align: left;
}
.ft_company a {
    color: #fff !important;
}
.ft_company p.title{
	font-size:14px;
	font-weight:bold;
	line-height:2;
	color:#eeeeee;
	opacity:1;
	margin-bottom: 20px;
	border: none;
}
.ft_company p{
	font-size:12px;
	line-height:2;
    opacity: .7;
}
.ft_menu {
    width: 70%;
    position: absolute;
    right: 5%;
    bottom: 50px;
}
.sns {
    /* width: 15%; */
    width:30%;
    margin-left:70%;
    /* margin-left: 85%; */
    overflow: hidden;
    max-height: 60px;
    max-width: 210px;
    margin-bottom: 15px;
}
.sns a img {
    max-width: 40px;
    width: 16%;
    margin: 0% 0% 0% 4%;
    float: left;
    transition: .5s;
    opacity: .7;
}

.sns a img:hover {
	opacity:1;
	transition:0.5s;
}
.ft_guide{
    text-align: right;
	line-height: 5;
	overflow: hidden;
}
.ft_guide a {
    display: inline;
    color: #fff;
    font-size: 14px;
    line-height: 25px;
    opacity: .6;
    margin-left: 30px;
}
.ft_guide a:hover{
	opacity:1;
	transition:.5s;
}
.copyright {
    font-size: 12px;
    line-height: 2;
    text-align: right;
    padding: 0;
    opacity: .6;
}
@media screen and (max-width: 768px) {/************ for SP**************/
    .footer_inner01 {
        height: 130px;
    }
    
    .footer_top {
        display:none;
    }
    
    .footer_cat {
        display:none;
    }
    .footer_home {
        width: 26%;
        left: 50%;
        margin-left:-13%;
    }
    .sns {
        width: 25%;
        margin-left: 75%;
    }
}

@media screen and (max-width: 480px) {/************ for SP**************/
    footer {
        max-height: 1200px;
        padding: 0;
    }
    
    .footer_inner01 {
        height: 100px;
    
    }
    .footer_home {
        width: 40%;
        left: 50%;
        margin-left: -20%;
    }
    hr.footer_line {
        margin-top: 99px;
    }
    
    footer ul li a{ font-size: 12px; color: #fff !important;}
    footer ul.cat01 li.title,
    footer ul.cat02 li.title,
	footer ul.cat03 li.title{
        width: 100%;
        font-size: 14px;
        padding-bottom: 10px;
        border-bottom: 1px solid #666666;
        margin-top: 0;
    }
    footer ul.cat01 li{
        width:50%;
        float:left;
        margin-top: 10px;
    }
    footer ul.cat02 li{
        width:50%;
        float:left;
        margin-top: 10px;
    }
	footer ul.cat03 li{
        width:50%;
        float:left;
        margin-top: 10px;
    }
    .sns {
        width: 40%;
        margin: 0 auto 30px;
    }
    footer ul.cat01,
    footer ul.cat02,
    footer ul.cat03	{
    width: 90%;
        float: left;
        margin: 0 0 30px 5%;
    }
    
    .footer_inner02 {
        height: 1100px;
    }
    .ft_company {
        width: 90%;
        left: 5%;
        text-align: center;
        bottom: 80px;
    }
    .ft_menu {
        position: absolute;
        width: 90%;
        right: 5%;
        top: 30px;
    }

    .ft_guide {
        width: 90%;
        margin: 20px 5%;
        text-align: left;
    }.ft_guide a {
        width: 50%;
        float: left;
        text-align: center;
        margin-left: 0;
    }
    .copyright {
        position: absolute;
        bottom: 5px;
        width: 100%;
        color: #fff;
        text-align: center;
        overflow: hidden;
    }
}































