/**
BASIC
*/

#bitnami-banner{
	display: none;
}

body{
	font-family:Roboto,'Noto Sans JP',"lucida grande",tahoma,verdana,arial,'Hiragino Kaku Gothic Pro',Meiryo,'MS PGothic',sans-serif ;
	font-weight: 400;
	letter-spacing: .02em;
	font-size: 90%;
	line-height: 1;
	background: url("../../../../images/bg/a3.png");
	color: #000;
	-webkit-font-smoothing: antialiased;
}
a img,
:link img,
:visited img{
	border: none;
}

img.gray {
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
filter: grayscale(100%);
}

img[src$=".gif"], img[src$=".png"] {
	/*image-rendering: -moz-crisp-edges;          Firefox */
	/*image-rendering:   -o-crisp-edges;          Opera */
	image-rendering: -webkit-optimize-contrast;/* Webkit (非標準の名前) */
	image-rendering: crisp-edges;
	-ms-interpolation-mode: nearest-neighbor;  /* IE (非標準プロパティ) */
}

a {text-decoration: underline; outline: 0;}
a:link {color: #000;outline: 0;}
a:visited {color: #000; outline: 0;}
a:active {color: #000; outline: 0;}
a:hover {
	color: #333;
	text-decoration: none;
	outline: 0;
}

a{
	transition: 0.2s ease 0s;
	-webkit-transition: 0.2s ease 0s;
	-moz-transition: 0.2s ease 0s;
	-ms-transition: 0.2s ease 0s;
}

.sp{
	display: none;
}

#wrapper{
	margin: 0;
	padding: 0;
	clear: both;
	overflow-x: hidden;
}

#contents{
	margin: 0px auto 0px 0;
	padding-top: 108px;
}
.store #contents{
	padding-top: 0px;
}
.home #contents{
	padding-top: 50px;
}

#main_contents{
	float: left;
	width: 680px;
	margin-right: 20px;
	margin-bottom: 30px;
}

#sidebar{
	float: left;
	width: 280px;
}

.inner{
	width: 980px;
	margin: 0 auto;
	position: relative;
}
.home .inner{
	/*width: 100%;*/
}

/**
ROLLOVER
*/

a img:hover{
	/* IE 
	filter: alpha(opacity=70);*/
	/* Safari Opera */
	opacity: 0.90;
	/* Firefox Netscape */
	-moz-opacity: 0.90;
}



/**
HEADER
*/

header{
	margin-bottom: 20px;
	position: relative;
	z-index: 999;
	width: 100%;
	box-sizing: border-box;
	background: rgba(0,0,0,0.8);
	
	position: fixed;
}
.home header{
	margin-bottom: 0;
}
/*.hidden {
  background: none;
  transition: all 0.5s ease;
}
*/
header .inner{
	padding: 10px 0;
}

header p.site_catch{
	font-size: 12px;
	line-height: 1;
	margin: 0 0 10px 0;
}

header h1.logo{
	position: absolute;
	top: 8px;
	left: 30px;
	z-index: 900;
}

header h1.logo img.title{
	height: 38px;
	vertical-align: bottom;
	
}


header h1.logo a{
	text-decoration: none;
	color: #FFF;
}

header .box_info{
	position: absolute;
	top: 10px;
	right: 20px;
}

header .box_info ul li{
	list-style: none;
	margin: 0 0 0 10px;
	display: inline-block;
	line-height: 1.5;
	vertical-align: middle;
}

header .box_info ul li i{
	margin-right: 5px;
}

header .box_info ul li.tel span a{
	font-size: 22px;
	font-weight: 500;
	pointer-events: none;
	color: inherit;
	text-decoration: none;
	color: #FFF;
}


header .box_social{
	position: absolute;
	top: 20px;
	right: 430px;
}

header .box_sub_menu{
	position: absolute;
	top: 20px;
	right: 20px;
}

header .box_sub_menu ul li{
	list-style: none;
	display: inline-block;
	font-weight: 500;
	margin-left: 1em;
}
header .box_sub_menu ul li a{
	text-decoration: none;
}


header .box_lang{
	position: absolute;
	top: 18px;
	right: 5px;
	z-index: 8888;
	border-left: solid 1px #FFF;
	padding-left: 10px;
	
}
header .box_lang ul li{
	list-style: none;
	font-size: 12px;
	display: inline-block;
}

header .box_lang ul li a{
	color: #FFF;
	text-decoration: none;
	padding: 5px 8px;
}
header .box_lang ul li a:hover{
	background: rgba(255,255,255,.3);
}
header .box_lang ul li.wpml-ls-current-language a{
	background: rgba(255,255,255,.3);
}


.wpml-ls-legacy-list-horizontal {
    border: none !important;
    padding: 0 5px !important;
}


/**
SOCIAL
*/

.box_social ul li{
	list-style: none;
	display: inline;
	margin: 0 5px;
	line-height: 0;
}

.box_social ul li img{
	width: 15px;
}

.box_social ul li span,
.box_social ul li i,
.box_social ul li svg{
	display: inline-block;
	line-height: 0;
	font-size: 15px;
}

.box_social ul li a{
	display :inline-block;
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	background-color: rgba(0,0,0,0.5);
	color: #FFF;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}



/**
SUB NAVI
*/

ul.sub_navi li{
	display: inline-block;
	margin:  0 .5em;
	line-height: 1.5;
	font-size: 12px;
}

ul.sub_navi li a {text-decoration: none; outline: 0;}
ul.sub_navi li a:link {color: #FFF;outline: 0;}
ul.sub_navi li a:visited {color: #FFF; outline: 0;}
ul.sub_navi li a:active {color: #FFF; outline: 0;}
ul.sub_navi li a:hover {
	color: #EEE;
	text-decoration: none;
	outline: 0;
}





/**
GLOBAL NAVI(STELL)
*/

.stellarnav.dark{
	/*background-color: rgba(49,48,44,1) !important;*/
}

stellarnav li{
	color: #FFF !important;
}

.stellarnav{
	z-index: 888 !important;
}

.stellarnav .full {
    width: auto !important;
}

.stellarnav ul{
	text-align: right !important;
   margin-right: 130px !important;
}
.stellarnav ul ul{
	text-align: left !important;
}

.stellarnav > ul > li > a{
	padding: 15px 20px 15px 0 !important;
	font-size: 13px;
	line-height: 1;
}

.stellarnav ul ul {
    width: 230px !important;
}
.stellarnav ul li ul li a{
	font-size: 13px !important;
	padding: 8px 20px !important;
}

.stellarnav li i{
	margin-right: 5px;
}

.stellarnav li img{
	height: 20px;
	vertical-align: middle;
	margin-right: 5px;
}


/**
TOPIC PATH
*/

#topic_path{
	clear: both;
	padding: 0 0 20px 0;
	clear: both;
}

#topic_path li {
	display: inline;
	font-size: 12px;
	line-height: 1.3;
	list-style-type: none;
}

#topic_path li:after{
	content: " \f105";
	font-family: FontAwesome;
	margin-left: .5em;
}



/**
COMMON_LAYOUT
*/

section.main_image{
	padding: 0 !important;
	position: relative;
}
section.main_image div.text{
	position: absolute;
	left: 50px;
	bottom: 50px;
	z-index: 999;
	color: #FFF;
}
section.main_image div.text p{
	text-shadow: 0px 0px 3px rgba(0,0,0,.6);
}
section.main_image div.text p.title{
	font-size: 80px;
	line-height: 1;
	margin: 0;
}

.corner{
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}

.shadow{
	box-shadow: 0px 0px 1px rgba(0,0,0,0.8);
	-moz-box-shadow: 0px 0px 1px rgba(0,0,0,0.8);
	-webkit-box-shadow: 0px 0px 1px rgba(0,0,0,0.8);
}

.txt.shadow{
	text-shadow: 1px 1px 0 rgba(0,0,0,0.5);
}

.fl_left{
	float: left;
	margin: 0 10px 5px 0;
 }
 
.fl_right{
	float: right;
	margin: 0 0 5px 10px
}
 
.clear{
	clear: both;
}
 
img{
	vertical-align:middle;
	max-width: 100%;
}

img.frame{
	padding: 10px;
	border: solid 1px #EEE;
	background: #FFF;
}

#contents section{
	clear: both;
	padding: 50px 0;
	/*border-bottom: solid 1px rgba(0,0,0,0.05)*/
}
.home #contents section{
	padding: 30px;
}
/*#contents section:nth-child(2){
	padding-top: 0;
}*/

/*パンくず入る場合
#contents section:nth-child(3){
	padding-top: 0;
}
*/


#contents section div.block{
	margin-bottom:30px;
}
#contents section div.block:last-child{
	margin-bottom: 0;
}


div.main_image{
	position: relative;
}
div.main_image img.photo{
	width: 100%;
}
section.intro .main_image{
	margin: 0 50px;
}

div.main_image div.box_text{
	position: absolute;
	top: 20%;
	left: 0px;
	width: 100%;
	z-index: 99;
	color: #FFF;
    text-shadow: 0px 0px 3px rgba(0,0,0,.5);
}
.store div.main_image div.box_text{
	left: 50px;
}

.store div.main_image div.box_text p{
	font-size: 18px;
	line-height: 1.8;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	margin: 0 !important;
}
.store div.main_image div.box_text p.catch{
	font-weight: bold;
	font-size: 28px;
	line-height: 1.4;
	font-family: 'Noto Serif JP', serif;
	margin: 1em 0 0 0 !important;
}
.store div.main_image div.box_text p.catch.sub{
	margin-bottom: 5px !important;
}


/**
ICON
*/

span.category a{
	padding: 8px 12px;
	display: inline-block;
	line-height: 1;
	background-color: rgba(0,0,0,1);
	color: #FFF;
	font-size: 12px;
	text-decoration: none;
    margin: 0 0 0 1px;
}



/**
COMMON_PARTS
*/

.cover:before {
    z-index: 60;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.2);
}
.cover.dark:before {
    background-color: rgba(0,0,0,0.5);
}


.cover:before p,
.cover:before div{
	z-index: 99;
	position: relative;
}

h1,h2,h3,h4,p.title{
	font-family: 'Noto Serif JP', serif;
}


div.title{
	position: relative;
	margin-bottom: 20px;
	clear: both;
}
div.title.center{
	text-align: center;
}
div.block  div.title{
	margin-top: 40px;
}


div.title h1{
	font-size: 36px;
	line-height: 1.2;
}
div.title h1 .sub{
	font-size: 60%;
	margin-left: 1em;
}

div.title h2{
	font-size: 26px;
	line-height: 1.2;
	font-weight: 600;
}
div.title h2 i{
	font-size: 40px;
	margin-right: 10px;
	vertical-align: middle;
}
div.title h2 span.icon{
	display: block;
	margin-bottom: 10px;
}
div.title h2 img{
	height: 50px;
	margin-right: 10px;
	vertical-align: middle;
}
div.title h2 span.sub{
	margin-left: 1em;
}
div.title h2 span.en{
	/*margin-left: 1em;*/
	font-size: 12px;
	margin-top: 6px;
	display: block;
}
/*div.title h2:before {
    content: '';
    width: 30px;
    height: 5px;
    background-color: #000;
    display: block;
    position: absolute;
    left: 0;
    bottom: -15px;
}*/

div.title h3{
	font-size: 22px;
	line-height: 1.2;
}

div.title h4{
	font-size: 24px;
	line-height: 1.2;
}

div.title.center h3{
	font-size: 22px;
	
    position: relative;
    display: inline-block;
    padding: 0 65px;
}

div.title.center h3:before, div.title.center h3:after{
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 30px;
	height: 1px;
	background-color: #333;
}
div.title.center h3:before {left:0;}
div.title.center h3:after {right: 0;}



p{
  line-height: 1.6;
  margin: 1em 0;
}

p.catch{
	font-size: 20px;
}

p.lead{
	font-size: 16px;
	margin: 1em 0;
}

p.right{text-align: right;}
p.center{text-align: center;}
p.left{text-align: left;}


.caution,
.caption{
	font-size: 12px;
	color: #666;
	line-height: 1.3;
	font-weight: normal;
}

ul.caution li{
	margin: 0.2em 0 0.2em 20px;
	line-height: 1.3;
}

hr{
	border-width: 1px 0px 0px 0px;
	border-style: solid;
	border-color: rgba(0,0,0,0.1);
	height: 1px;
	margin: 1.5em 0;
	clear: both;
}

span.mark.new,
span.mark.update{
	margin-left: 1em;
	font-weight: normal;
	font-size: 12px;
	color: #F00;
}

.tel a{
	pointer-events: none;
}


/**
SWIPER SLIDER
*/

@-webkit-keyframes zoomUp {
  0% {
      -webkit-transform: scale(1);
      transform: scale(1);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}

@keyframes zoomUp { /* 1.15倍させる指定 */
  0% {
      -webkit-transform: scale(1);
      transform: scale(1);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}

.swiper-slide {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img { /* 12秒かけて拡大させる */
    -webkit-animation: zoomUp 12s linear 0s;
    animation: zoomUp 12s linear 0s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.slide-img {
    background-size: cover; 
    background-position: center center;
    height: 94vh;
}



/**
SLICK SLIDER
*/

.main_imgBox {
    height: 100vh;
    overflow: hidden;
    position: relative; }


.main_img {
    z-index:10;
    opacity: 0;
    width: 100%;
    height: 100vh;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 36s 0s infinite;
    animation: anime 36s 0s infinite; }

.main_img:nth-of-type(2) {
      -webkit-animation-delay: 6s;
      animation-delay: 6s; }

    .main_img:nth-of-type(3) {
      -webkit-animation-delay: 12s;
      animation-delay: 12s; }

    .main_img:nth-of-type(4) {
      -webkit-animation-delay: 18s;
      animation-delay: 18s; }

    .main_img:nth-of-type(5) {
      -webkit-animation-delay: 24s;
      animation-delay: 24s; }

    .main_img:nth-of-type(6) {
      -webkit-animation-delay: 30s;
      animation-delay: 30s; }

@keyframes anime {
  0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    17% {
        opacity: 1;
    }
    25% {
        opacity: 0;
        transform: scale(1.2) ;
         z-index:9;
    }
    100% { opacity: 0 }
}



/**
BX-SLIDER
*/

#sliderWrap{
	margin-bottom: 20px;
	z-index: 99;
}

.bx-wrapper .bx-viewport {
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	border: inherit !important;
	left: 0 !important;
	background: inherit !important;
}

#sliderWrap ul li{
	list-style: none;
}

#slider li {
  height: 100vh;
  background: center / cover no-repeat;
}


.main_slider{
	position: relative;
}
.main_slider p.catch{
	font-size: 40px;
	font-weight: bold;
	color: #FFF;
	text-shadow: 1px 1px 0 rgba(0,0,0,0.5);
	display: block;
	text-align: center;
	position: absolute;
	top: 12px;
	left:-13px;
	width: 100%;
}
.main_slider p.catch a{
	color: #FFF;
	text-decoration: none;
}
.main_slider a.whole{
	display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
	

.bx-viewport {
  left: 0;
  box-shadow: none;
  border: none;
}

.bx-wrapper .bx-controls-direction a{
	z-index: 99 !important;
}



.store #sliderWrap{
	margin: 50px auto;
}

.store .bx-wrapper img{
	margin: 0 auto;
	max-height: 650px;
}

.store .bx-wrapper{
	margin-bottom: 0 !important;
}

.store #bx-pager{
	text-align: center;
	width: 100%;
	padding-top: 20px;
}

.store #bx-pager a{
	margin: 0 8px;
}

.store #bx-pager a img{
	height: 60px;
	margin-bottom: 2px;	/*padding: 2px;
	border: solid 1px #EEE;*/
}



/**
PAGER
*/

.pager{
	clear:both;
	padding: 30px 0;
	position: relative;
	z-index: 9999;
	line-height: 2.5;
}
.wp-pagenavi:after {
	font-size: 1px;
	content: "";
	display: block;
	height: 0;
	clear: both;
}
.wp-pagenavi {
	zoom: 1;
}
a.page{
	white-space: nowrap;
}
.wp-pagenavi {
	text-align: center;
}
.wp-pagenavi .current,
.wp-pagenavi .pages{
	clear: both;
	font-size: 1.2em;
	color: #666;
	padding: 8px 12px 8px 12px;
}
.wp-pagenavi .current{
	background-color: rgba(0,0,0,1);
	color: #FFF;
	border: none;
}

.wp-pagenavi span.current{
	/*border: #cd3e2c solid 1px;*/
}
.wp-pagenavi a{
	font-size: 1.2em;
	padding: 8px 12px 8px 12px;
	/*border: #DDD solid 1px;*/
	text-decoration: none;
	border: none;
	background-color: ;
}
.wp-pagenavi a.last,
.wp-pagenavi a.previouspostslink{
	background-color: inherit;
}
.wp-pagenavi span.pages,
.wp-pagenavi span.extend{
	border: none;
}
.wp-pagenavi a:hover{
	text-decoration: none;
	background-color: rgba(0,0,0,0.5);
	color: #FFF;
}

/**
ページ分割
*/
.wp-separatenavi {
	font-size: 1.2em;
	color: #666;
	margin: 1em auto;
	line-height:2em;
	text-align:center;
}
.wp-separatenavi a {
	padding: 12px 8px;
	border: none;
	background-color: #f3f3f3;
	text-decoration: none;
}
.wp-separatenavi a:hover {
	text-decoration: none;
	background-color: #cd3e2c;
	color: #FFF;
}
.wp-separatenavi .numbers {
	padding: 12px 8px;
}


@media screen and (max-width: 768px) {
.pager{
	font-size: 90%;
}

.wp-pagenavi .pages{
	display: block;
}
}


/**
SINGLE
*/

.single #contents section{
	border: none;
}

.single article{
	margin-bottom: 50px;
    position: relative;
	
	padding: 40px 50px;
	background:  rgba(255,255,255,.8);
}

.single article p img{
	margin-bottom: 3px;
}

.single article h1{
	font-size: 180%;
	line-height: 1.4;
	font-weight: 600;
	margin: 1em 0 .5em 0;
    border-bottom: solid 2px #000;
    padding: 0 0 .5em 0;
}

.single #main_contents h4{
	font-size: 130%;
	line-height: 1.5;
	margin-bottom: 1em;
	border-left: 3px solid #000;
    padding-left: 15px;
}

.single article p.data{
text-align: right;
}

.single article p.data span.category{
position: absolute;
top: 0;
left: 0;
margin: 0;
}

.single article p.data span a{

}

.single article p.data span.date,
.single article p.data span.writer{
	font-size: 16px;
}

.single article p.data span.writer{
	display: none;
}

.single article img{
	max-width: 100%;
}



/**
SIDEBAR
*/

#sidebar section{
	padding: 20px 0;
	border: none;
}
#sidebar section:first-child{
	padding-top: 0;
}

.box_search button{
    border: none !important;
    color: #FFF;
    height: 35px;
    line-height: 35px;
    width: 18%;
    text-align: center;
    padding: 0;
    vertical-align: middle;
	border-radius: 0;
}

.box_search input {
    border: none !important;
    background-color: #FFF;
    height: 35px;
    font-size: 14px;
    width: 82% !important;
    padding-left: 10px !important;
    vertical-align: middle;
	background: rgba(0,0,0,0.05);
}

#sidebar h3{
	font-size: 120%;
	padding-bottom: 10px;
	margin: 0 0 5px 0;
}

#sidebar ul li{
	line-height: 1.4;
	margin-bottom: .3em;
	font-size: 90%;
	margin-left: 20px;
}

#sidebar ul li a{
	text-decoration: none;
}

#sidebar select{
	width: 100%;
	border:  none;
	border-radius: 0px;
	background-color: rgba(0,0,0,0.05);
}



/**
NEWS
*/

.icon.new{
	margin-left: .5em;
	color: #F30;
	font-size: 85%;
}

.news div.important{
	padding: 30px 30px 20px 10px;
	/*background: rgba(0,0,0,0.05);*/
	border: solid 1px rgba(0,0,0,0.3);
	margin-bottom: 20px;
	position: relative;
	min-height: 82px;
	
}

.news div.important dl{
	margin-left: 200px;
	padding-left: 40px;
	border-left: solid 1px rgba(0,0,0,0.15);
}
.news div.important h3{
	position: absolute;
	top: 30px;
	left: 30px;
	font-size: 20px;
	
}

.news dl dt{
	line-height: 1.5;
	color: #666;
	clear: both;
	float: left;
	width: 15%;
	margin-bottom: .5em;
}

.news dl dd{
	line-height: 1.5;
	width: 85%;
	float: left;
	margin-bottom: .5em;
}

.news dl dd a{
	text-decoration: none;
}


.news ul.item.box li ul li{
	width: 100%;
}
.news ul.item.box li ul{
	margin-left: -2%;
}
.news ul.item.box li ul li div.image{
	width: 40%;
	margin-right: 2%;
	height: 85px;
	overflow: hidden;
}
.news ul.item.box li ul li div.content{
	width: 55%;
}
.news ul.item.box li ul li div.content p.date{
	font-size: 100%;
	margin: 0 0 5px 0;
	line-height: 1;
}
.news ul.item.box li ul li div.content p.date span.category{
	margin-left: 1em;
}
.news ul.item.box li p.title{
	font-size: 100%;
}


/**
LIST_LIST
*/

ul.item.list li p{
	margin: 0;
}

ul.item.list li{
	list-style: none;
	margin-bottom: 2%;
}

ul.item.list li div.image{
	width: 10%;
	margin-right: 1%;
	display: inline-block;
	vertical-align: top;
}

ul.item.list li div.image img{
	width: 100%;
}

ul.item.list li div.content{
	width: 88%;
	display: inline-block;vertical-align: top;
}

ul.item.list li p.date{
	font-size: 13px;
	color: #666;
	line-height: 1;
	margin-bottom: 5px;
}

ul.item.list li p.title{
	font-size: 14px;
	line-height: 1.5;
}

ul.item.list li p.category{
	margin-bottom: 5px;
	line-height: 1;
}

ul.item.list li p.text{
	font-size: 12px;
}





/**
LIST_BOX
*/

ul.item.box{
	margin-left: -2%;
}

ul.item.box li{
	list-style: none;
	float: left;
	margin: 0 0 4% 2%;
	display: inline-block;
}

ul.item.box li div.image{
	float: none;
	margin-bottom: 10px;
	width: 100%;
	position: relative;
	z-index: 98;
}
ul.item.box li div.image span.category{
	position: absolute;
	top: 0;
	right: 0;
	z-index: 99;
	line-height: 0;
}
	
ul.item.box li div.image img{
	width: 100%;
}

ul.item.box li div.content{
	float: none;
	width: 100%;
}

ul.item.box li p.date{
	font-size: 12px;
	margin: 5px 0;
	line-height: 1;
}
ul.item.box li p.title{
	font-size: 110%;
	line-height: 1.3;
	margin: 0 0 5px 0;
}
ul.item.box li p.title a{
	text-decoration: none;
}
ul.item.box li p.text{
	font-size: 12px;
	color: #666;
	margin: 5px 0 0 0;
	line-height: 1.3;
}

ul.item.box.column_2 li{
	width: 48%;
}

ul.item.box.column_3 li{
	width: 31.33333333%;
	
}

ul.item.box.column_4 li{
	width: 23%;
}

ul.item.box.column_5 li{
	width: 18%;
}


/**SIZE FIX*/

ul.item.box.fix li div.image,
flexbox.fix li div.image{
	float: none;
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
	position: relative;
}
ul.item.box.fix li div.image,
.flexbox.fix li div.image{
	height: 200px;
	overflow: hidden;
	position: relative;
}
ul.item.box.fix li div.image img,
.flexbox.fix li div.image img{
  position: absolute;
  width: 20%;
  height: 0;
  width: 100%;
  height: auto;
 /* padding-bottom: 20%;*/
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}



/**
FLEXBOX
*/

.flexbox{
	display: flex;
	display: -webkit-flex; /* Safari */
	-js-display: flex;/*IE*/
    -webkit-flex-wrap: wrap;
	justify-content: space-around; 
    flex-wrap: wrap;
    align-products: stretch;
    justify-content: space-between;
	/*justify-content: flex-start;*/
	width: 100%;
}

.flexbox.reverse {
	flex-direction:row-reverse;
}

.flexbox li div.image{
	float: none;
	margin-bottom: 10px;
	width: 100%;
	position: relative;
}
.flexbox li div.image span.category{
	position: absolute;
	top: 0;
	right: 0;
	z-index: 999;
	line-height: 0;
}
	
.flexbox li div.image img{
	width: 100%;
}

.flexbox.column_2 li{
	width: 49%;
}
.flexbox.column_3 li{
	/*width: 32%;
  width : -webkit-calc(100% / 3) ;
  width : calc(100% / 3) ;*/
  width : 31.33333333% ; /* 未対応ブラウザ用フォールバック */
}
.flexbox.column_4 li{
	width: 24%;
}
.flexbox.column_5 li{
	width: 19%;
}


 
.flexbox li {
	list-style: none;
	margin-bottom: 3%;
}
.flexbox li p.date{
	font-size: 12px;
	margin: 5px 0;
	line-height: 1;
}
.flexbox li p.title{
	font-size: 110%;
	line-height: 1.3;
	margin: 0 0 5px 0;
}
.flexbox li p.text{
	font-size: 12px;
	color: #666;
	margin: 5px 0 0 0;
	line-height: 1.3;
}

flexbox div.sub{
	flex: 1;
	margin: 0 20px 0 0;
}
.flexbox.normal div.sub{
	margin: 0 0 0 20px;
	flex: 1;
}
.flexbox.reverse div.sub{
	margin: 0 20px 0 0;
	flex: 1;
}

.flexbox.reverse .sub.photo p:first-child{
	margin-top: 0;
}

.flexbox .main{
	flex: 1;
}
.flexbox .main.w_3{
	flex: 3;
}
.flexbox .main.w_2{
	flex: 2;
}
.flexbox .main.w_4{
	flex: 4;
}
.flexbox .main.w_5{
	flex: 5;
}

.flexbox .main p{
	margin-top: 0;
}


.flexbox.box ul li{
	width: 100%;
}
.flexbox.box ul li div.image{
	width: 25%;
}
.flexbox.box ul li div.content{
	width: 73%;
}



/**
MAP
*/

.map img{
	max-width: initial !important;
}

.map iframe{
	width: 100%;
	/*height: auto;*/
}


/**
TABLE
*/

table{
	width: 100%;
}

table ul,
table ol{
	margin-left: 20px;
}

table.data th,
table.data td{
	padding: 10px;
	border: solid 1px #EEE;
	line-height: 1.5;
}

table.list{
	border-top: dashed 1px rgba(0,0,0,0.5);
	margin-bottom: 2em;
}
table.list th,
table.list td{
	padding: 15px 0;
	border-bottom: dashed 1px rgba(0,0,0,0.5);
	line-height: 1.5;
}
table.list th{
	font-weight: 600;
	padding-right: 1em;
	white-space: nowrap;
}

table.block{
	border-collapse: separate;
    border-spacing: 2px;
}

table.block th,
table.block td{
	padding: 10px;
	line-height: 1.5;
}

table.block th{
	background-color: rgba(0,0,0,0.2);
}

table.block td{
	background-color: rgba(0,0,0,0.1);
}

.trcolor1{background-color: rgba(255,255,255,1);}
.trcolor2{background-color: rgba(255,255,255,.1);}



/**
FORM
*/

span.required{
	color: #F30;
	margin: 0 0.5em;
	font-weight: normal;
}

div.form{
	margin: 1em auto;
	padding: 30px 50px;
	background-color: rgba(0,0,0,.05);
}

div.form dl dt,
div.form dl dd{
	vertical-align: top;
	padding: 10px 0;
}

div.form dl dd .error{
	margin: .5em 0 0 0;
}

div.form dl dt{
	clear: both;
	float: left;
	width: 20%;
}

div.form dl dd{
	float: left;
	width: 80%;
}

div.form dl dd ul li{
	list-style: none;
	line-height: 1.5;
	margin: .2em 0;
}

div.form dl dd ul li label{
	margin-left: 5px;
}



/**
INPUT
*/

input,
textarea{
	outline: none;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
textarea{
	border: solid 1px #000;
	padding: 5px;
	font-size: 120%;
	width: 80%;
}

input.half{
	width: 50%;
}
input.full{
	width: 100%;
}

select.select-box{
    margin: 0;
    padding: 0 30px 0 20px;
    height: 40px;
    line-height: 40px;
    font-size: 100%;
    background: url("../../../../images/arrow_down.png") no-repeat 90% 50% #FFF;
    background-size: 14px;
    border-radius: 3px;
    -webkit-appearance: none;
}

select.select-box.full{
	width: 100%;
}



/**
BUTTON
*/

input.btn,
button,
a.btn{
	background-color: rgba(0,0,0,1);
	color: #FFF;
	font-size: 100%;
	height: 50px;
	line-height: 50px;
	cursor: pointer;
	border: none;
	text-decoration: none;
	padding: 0 20px;
	display: inline-block;
}
.products.single input.btn,
.products.single button,
.products.single a.btn{
	background-color: rgba(204,38,38,1);
}
a.btn img{
width: 20px !important;
}
a.btn.grey{
	background-color: rgba(0,0,0,.1);
	color: #000;
}
a.btn.grey:hover{
	background-color: rgba(0,0,0,.2);
	color: #000;
}

input.btn.size_s,
button.size_s,
a.btn.size_s{
	height: 35px;
	line-height: 35px;
	font-size: 85%;
}

input.btn.size_l,
button.size_l,
a.btn.size_l{
	height: 60px;
	line-height: 60px;
	font-size: 120%;
}

input.btn.size_2l,
button.size_2l,
a.btn.size_2l{
	height: 80px;
	line-height: 80px;
	font-size: 140%;
}

input.btn.cancel,
button.cancel,
a.btn.cancel{
	background-color: rgba(0,0,0,0.8);
	color: #333;
}

input.btn:hover,
button:hover,
a.btn:hover{
	background-color: rgba(0,0,0,0.8);
}

.products.single input.btn:hover,
.products.single button:hover,
.products.single a.btn:hover{
	background-color: rgba(204,38,38,0.8);
}



/**
INFO
*/

.box.info.bottom{
	/*padding: 30px;
	background-color: rgba(0,0,0,0.05);*/
	padding: 0 !important;
	text-align: center;
}

.box.info.bottom ul{
	margin: 1.5em 0;
}

.box.info.bottom ul li{
	text-align: center;
	/*background-color: rgba(0,0,0,0.05);
	padding: 30px 0;*/
}

.box.info.bottom ul li.button a{
	width: 100%;
}

.box.info.bottom ul li.tel,
.box.info.bottom ul li.fax{
	font-size: 200%;
	height: 60px;
	line-height: 60px;
}

.box.info.bottom ul li.tel p{
	text-align: center;
}

.box.info.bottom ul li.tel,
.box.info.bottom ul li.tel a,
.box.info.bottom ul li.fax,
.box.info.bottom ul li.fax a{
	color: #333;
	text-decoration: none;
}

.box.info.bottom ul li.tel p.caution{
	font-size: 50%;
	margin: 0;
}

.box.info.bottom ul li.tel img,
.box.info.bottom ul li.fax img{
	height: 40px !important;
	margin-right: 10px;
}



/**
FOOTER
*/

footer{
	clear: both;
	background-color: rgba(49,48,44,1);
	padding: 50px;
}

footer{
	color: #FFF;
}

footer hr{
	border-color: rgba(255,255,255,.2);
	margin: 0 0 2em 0;
}


footer ul.sub_navi{
	text-align: center;
}

footer ul li.data{
	padding-right: 140px;
}
footer ul li.data ul li{
	width: 100% !important;
	line-height: 1.5;
	font-size: 12px;
}
footer ul li.data ul li.unagi{
	background: url("../../../../images/line_2.png") no-repeat left bottom;
}

footer ul li.data ul li ul li{
	padding: 2em 0;
	margin: 0;
}

footer ul li.data ul li.tel span{
	margin-right: 1em;
}
footer ul li.data ul li a{
	color: #FFF;
}
footer ul li.data ul li.sns i{
	font-size: 20px;
	margin-right: 5px;
	vertical-align: middle;
}
footer ul li.data ul li.sns a{
	text-decoration: none;
}

footer ul li.data ul li.nakagawa p.title img{
	height: 43px;
}
footer ul li.data ul li.unagi p.title img{
	height: 43px;
	margin-right: 10px;
	vertical-align: bottom;
}
footer ul li.data ul li.denbe p.title img{
	height:43px;
	margin-right: 10px;
	vertical-align: bottom;
}
footer ul li.data ul li.rinrin p.title img{
	height: 30px;
	margin-right: 10px;
	vertical-align: bottom;
}

footer ul li.data ul.info li{
	margin-bottom: 5px;
}

footer ul li.data ul li ul.info li{
	font-size: 12px;
	padding: 0;
}
footer ul li.data ul li p.title.area{
	display: inline-block;
	text-align: center;
	width: 100%;
	background: url("../../../../images/line_1.png") repeat-x left center;
}
footer ul li.data ul li p.title.area span.text{
	background: rgba(49,48,44,1);
	padding: 0 10px;
	font-size: 13px;
	font-family: Roboto,'Noto Sans JP',"lucida grande",tahoma,verdana,arial,'Hiragino Kaku Gothic Pro',Meiryo,'MS PGothic',sans-serif ;
}


footer ul li.data ul li.nakagawa{
	padding-bottom: 20px;
}



footer ul li.menu ul{
	margin-bottom: 30px;
}
footer ul li.menu ul ul{
	margin-bottom: 0;
	margin-top: 10px;
}
footer ul li.menu ul ul li{
	margin-left: 20px;
}
footer ul li.menu ul li{
	width: 100% !important;
	line-height: 1.8;
}
footer ul li.menu ul li a{
	text-decoration: none;
	color: #FFF;
}
footer ul li.menu ul li img{
	height: 28px;
	vertical-align: bottom;
}
footer ul li.menu ul li ul li{
	margin-bottom: 5px;
	font-size: 13px;
}


footer .box_social{
	text-align: center;
	margin: 1em auto;
}

footer p.copy{
	font-size: 12px;
	line-height: 1.4;
	text-align: center;
	margin: 1em 0 0 0;
}

footer hr{
}

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
}

#page-top a {
    background: rgba(0,0,0,0.2);
    text-decoration: none;
    font-size: 20px;
    color: #fff;
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    display: block;
	border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
}


/**
CLEARFIX
*/

.clearfix::after {
	content: "";
	display: table;
	clear: both;
}





/**
HOME
*/

.home section{
	border: none !important;
}

.home .news{
    /*background-color: rgba(0,0,0,0.03);*/
	background: url("../../../../images/bg/whitey.png");
	background: url("../../../../images/bg/white-waves.png");
	background: rgba(0,0,0,0.05);
	background: rgba(255,255,255,.3);
}

.home .news ul li{
	margin-bottom: 0;
}


section.products{
	background: rgba(255,255,255,.5);
	background: rgba(0,0,0,0.05);
}

section.products ul.products li:nth-child(1),
section.products ul.products li:nth-child(2),
section.products ul.products li:nth-child(3),
section.products ul.products li:nth-child(4){
	width: 49%;
}
section.products ul.products li{
	margin-bottom: 1.5%;
}

section.products ul.recommend{
	margin-bottom: 30px;
}
section.products ul.recommend li div.image{
	height: 200px;
}
section.products ul.recommend li{
	margin-bottom: 0;
}
section.products ul.recommend li p.title{
	text-align: center;
	margin: 1em 0;
	font-weight: 500;
}



section.store{
	background: rgba(0,0,0,.1);
}
.home section.store ul li{
	list-style: none;
	text-align: center;
	position: relative;
	margin-top: 60px;
}
.home section.store ul li a{
	text-decoration: none;
}
.home section.store ul li:first-child{
}
.home section.store ul li:last-child{
	margin-bottom: 0;
}
.home section.store ul li span.main img{
	width: 100%;
}
.home section.store ul li div.title{
	margin-bottom: 20px;
}

.home section.store ul li .logo{
	clear: both;
	margin-bottom: 10px;
	display: block;
}
.home section.store ul li .logo span{
	display: block;
	margin-top: 1px;
    font-family: 'Noto Serif JP', serif;
	font-weight: 600;
}


.home section.store ul li .logo img{
	height: 120px;
}
.home section.store ul li.rinrin .logo img{
	height: 50px;
}
.home section.store ul li span.main{
	display: block;
}


.hover_text{
	position: relative;
	display: inline-block;
	width: 100%;
	text-align: center;
}
.hover_text .text p.caption{
	color: #FFF !important;
	font-size: 10px;
}
section.products ul.products li:nth-child(1) .hover_text .text p.caption,
section.products ul.products li:nth-child(2) .hover_text .text p.caption,
section.products ul.products li:nth-child(3) .hover_text .text p.caption,
section.products ul.products li:nth-child(4) .hover_text .text p.caption{
	font-size: 13px;
	line-height: 1.8 !important;
}
.hover_text .mask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	padding: 40% 20px 0 20px;
	opacity:	 0;	
	background-color:	rgba(0,0,0,0.4);
	-webkit-transition:	all 0.2s ease;
	transition:		all 0.2s ease;
}
.hover_text .text.mask img{
	height: 150px;
	width: auto;
}

.hover_text:hover .mask {
	opacity:	 1;
}

.hover_text.logo .mask {
	padding: 20% 20px 0 20px;
}


section.products ul.products li div.image{
	/*display: flex;
    justify-content: center; 
    align-items: center;*/
	position: relative;
}

section.products ul.products li div.image p.title{
	top: 40%;
	left: 0;
	position: absolute;
	font-size: 26px;
	text-shadow: 0px 0px 3px rgba(0,0,0,.5); 
	color: #FFF;
	font-weight: 600;
	width: 100%;
	text-align: center;
	z-index: 99;
}
section.products ul.products li:nth-child(1) div.image p.title,
section.products ul.products li:nth-child(2) div.image p.title{
	font-size: 50px;
}


/**
STORE
*/

body.store  section{
	border: none !important;
}

body.store div.title h2:first-child{
	display: none;
}

body.store  section.intro p{
	/*text-align: center;*/
    /*text-shadow: 0px 0px 3px rgba(0,0,0,.5);*/
}

body.store  section.intro p.logo{
	text-align: center;
	margin-bottom: 20px;
}
body.store  section.intro p.logo span.sub{
	display: block;
	font-family: 'Noto Serif JP', serif;
	margin-top: 10px;
}
body.store  section.intro p.logo img{
	height: 180px;
}

body.store section.data{
	background: rgba(255,255,255,.5);
}

body.store section.data p.button{
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 3em;
}
body.store section.data p.button a{
	width: 100%;
}
body.store section.data p.button i{
	margin-right: 1em;
}

body.store section.photos ul li{
	margin-bottom: 1.5% !important;
}
body.store section.photos ul li:nth-child(1),
.store section.photos ul li:nth-child(2){
	width: 49% !important;
}
body.store section.photos ul.lead_4 li:nth-child(1),
body.store section.photos ul.lead_4 li:nth-child(2),
body.store section.photos ul.lead_4 li:nth-child(3),
body.store section.photos ul.lead_4 li:nth-child(4){
	width: 49% !important;
}

body.store section.photos ul li p.text{
	display: none;
}


/**
ABOUT
*/

body.about .intro div.box_text{
	text-align: right;
	padding-right: 10%;
	top: 60%;
}

body.about .intro p.catch{
	font-size:36px;
	font-family: 'Noto Serif JP', serif;
    text-shadow: 0px 0px 3px rgba(0,0,0,.5);
	margin: 0;
}

body.about .greeting{
	background: rgba(255,255,255,.5);
}

body.about .greeting ul{
	margin-top: 50px;
}

body.about .greeting ul li{
	margin-bottom: 20px;
}

body.about .greeting div.main_column{
	width: 80%;
	margin: 30px auto 50px auto;
}

body.about .process div.main_image div.box_text{
	top: 60%;
}

.about .process  ul li{
	margin-top: 20px;
	margin-bottom: 0;
}


body.about .history{
	background: rgba(255,255,255,.25);
}



/**
CONTACT
*/

.contact .tel section{
	/*padding: 20px 20px 20px 20px !important;*/
}

.contact section.tel{
	padding-bottom: 0 !important;
	padding-top: 20px !important;
}
.contact section.male{
	padding-top: 0 !important;
}


.contact .tel section ul li{
	margin-bottom: 0 !important;
}



.contact .box.info.bottom ul li.tel, 
.contact .box.info.bottom ul li.fax {
    height: inherit;
    line-height: inherit;
	padding: 30px;
	background: rgba(0,0,0,.05);
}



.contact .box.info.bottom ul li p{
	margin: 0;
}

.contact .box.info.bottom ul li.tel p.tel2{
	font-size: 70%;
	margin-bottom: 10px;
}
.contact .box.info.bottom ul li.tel p.tel2 img{
	height:25px !important;
}
.contact .box.info.bottom ul li.tel p.freedial{
	margin-bottom: 10px;
}



/**
STATIC
*/

.privacy ol,
.privacy ol ol{
	margin: 1em 0 1em 2em;
}

.privacy ol li{
	line-height: 1.6;
}

.privacy ol li h3{
	font-size: 20px;
}


@media (max-width: 1200px) and (min-width: 801px){
	
.inner {
    width: 90%;
}

#main_contents{
	width: 100%;
	margin-right: 0;
}

#sidebar{
	float: none;
	clear: both;
	width: 100%;
}

footer ul li.data{
	padding-right: 0;
}

}

@media screen and (max-width: 1028px) {
/**
HEADER
*/


header .inner{
	padding: 10px;
	box-sizing: border-box;
}

header p.site_catch{
	font-size: 10px;
}


header h1.logo{
	/*width: 100px;*/
	margin: 0 auto;
	position: relative;
	/*text-align: center;*/
	left: 50px;
	z-index: 999;
}

header h1.logo img.title {
	height: 30px;
}
.home header h1.logo img.title{
	height: 30px;
}

header h1{
}

header .box_info{
	margin: 0;
	top: 20px;
	right: 20px;
}

header .box_info ul li{
	list-style: none;
	margin: 0 0 0 0;
	width: 49%;
	text-align: center;
	display: inline-block;
}

header .box_info ul li.tel span.number{
	display: none;
}

header .info ul li.tel span a:link{
	pointer-events: inherit;
}
header .box_info ul li.button a{
	width: 100%;
}

header .box_social{
	top: 20px;
	right: 10px;
}

header .box_sub_menu{
	display: none;
}

header nav {
    position: absolute !important;
    top: 0;
    left: 0;
}
	

header .box_lang{
	position: absolute;
	top: 15px;
	right: 4px;
	z-index: 999;
	border: none;
}

header .box_lang ul li a{
	color: #FFF;
	text-decoration: none;
	padding: 5px 5px;
}

}
	


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

/**
BASIC
*/

body{
	-webkit-text-size-adjust: none;
	font-size: 14px;
}

img{
	max-width: 100% !important;
	height: auto;
}

.sp{
	display: inherit;
}

#wrapper{
	width: 100%;
}

#contents{
	width: 100% !important;
	padding-top: 70px;
}
.home #contents{
	margin-top: -70px;
}

#main_contents{
	float: none;
	width: 100%;
	margin-right: 0px;
}

#sidebar{
	float: none;
	clear: both;
	width: 100%;
}

.inner{
	width: 100%;
	padding: 0 10px;
}

#wrapper,
#main_contents,
#sidebar,
.inner{
	float: none;
	width: 100%;
}

#contents section{
	padding: 20px 0;
}
#contents section:nth-child(2){
	padding-top: 0;
}
.store #contents section:nth-child(2){
	padding-top: 30px;
}



/**
SUB NAVI
*/




/**
GLOBAL NAVI(STELL)
*/

.stellarnav ul{
    margin-right: 0px !important;
}

.stellarnav.mobile{
	text-align: left !important;
}

.stellarnav > ul > li > a {
    padding: 15px !important;
    font-size: 15px;
}

.stellarnav.mobile .menu-toggle{
	background: rgba(0,0,0,1);
}
.stellarnav.light .menu-toggle{
	color: #FFF !important;
}
.stellarnav.mobile > ul > li{
	border-top: solid 1px rgba(0,0,0,0.05) !important;
}

.stellarnav.mobile{
	border: none;
}
.stellarnav.mobile a{
	z-index: 9999 !important;
}
.stellarnav > ul > li{
	width: 100%;
}

.stellarnav li li{
	text-align: left;
	padding-left: 27px;
}

.stellarnav ul{
	text-align: left !important;
}

.stellarnav ul ul{
	width: 100% !important;
}


.stellarnav.mobile.light li a{
	height: 48px;
	padding-left: 10px !important;
	border-bottom: solid 1px rgba(0,0,0,0.1) !important;
}

.bx-wrapper .bx-controls-direction a{
	background: none;
}



/**
COMMON_LAYOUT
*/

section.main_image{
	margin-bottom: 10px;
}
section.main_image div.text{
	position: absolute;
	left: 15px;
	bottom: 15px;
}
section.main_image div.text p{
	font-size: 12px;
	margin-bottom: 0;
}
section.main_image div.text p.title{
	font-size: 40px;
	line-height: 1;
	margin: 0;
}

section.intro .main_image{
	margin: 20px 0px 0 0px;
}

div.main_image{
	margin: 20px 0;
}


/**
ICON
*/

span.category a{
	display: inline-block;
	line-height: 1;
	background-color: rgba(0,0,0,1);
	color: #FFF;
	font-size: 10px;
	text-decoration: none;
}


 
/**
COMMON_PARTS
*/

/*h1,h2,h3{
	font-size: 100%;
	line-height: 1.3;
}*/

div.title{
	margin: 10px 0 20px 0;
}

div.title h1{
	font-size: 30px;
	line-height: 1.2;
}
div.title h2{
	font-size: 22px;
	line-height: 1.2;
	padding-bottom: 20px;
}
div.title.center h2{
	font-size: 150%;
}
div.title h3,
div.title.center h3{
	font-size: 18px;
	line-height: 1.2;
}
div.title.center h3 {
    padding: 0 45px;
}

div.title h4{
	font-size: 18px;
	line-height: 1.2;
}

p.catch{
	font-size: 18px;
}

p.lead{
	font-size: 14px;
}

.tel a{
	pointer-events: inherit;
}



/**
MAIN
*/


/**
SWIPER SLIDER
*/

.slide-img {
    height: 100vh;
}

.slide-img.ph_1{
    background-position: 25% 50%;
}
	



/**
BX-SLIDER
*/

.bx-wrapper img{
	max-width: 100%;
	height: inherit;
	margin: 0;
}

.main_slider p.catch{
	font-size: 16px;
}

#slider li{
	background-position: -200px;
}


.store #bx-pager a img {
    height: 35px;
    margin-bottom: 10px;
}


/**
PAGER
*/

.pager{
	font-size: 80%;
}

.wp-pagenavi .current, .wp-pagenavi .pages,
.wp-pagenavi a{
    padding: 5px 8px 5px 8px;
}


/**
SINGLE
*/

.single article h1 {
    font-size: 130%;
    margin-top: 1em;
}

.single article{
	padding: 20px 30px;
}

/**
SIDEBAR
*/

/**
NEWS
*/

.news div.important {
	padding: 20px 20px 10px 20px;
}

.news div.important h3{
	position: inherit;
	top: 0px;
	left: 0px;
	font-size: 18px;
	margin-bottom: 20px;
	
}

.news div.important dl{
	border: none;
	margin: 0;	
	padding: 0;
}

.news dl dt{
	clear: both;
	float: none;
	width: 100%;
	margin-bottom: 0;
}

.news dl dd{
	width: 100%;
	float: none;
	margin-bottom: 1em;
}

.news #contents ul li{
	width: 100%;
	margin-bottom: 6%;
}


/**
LIST_LIST
*/

ul.item.list li div.image{
	width: 20%;
	margin-right: 2%;
}

ul.item.list li div.content{
	width: 77%;
}


/**
LIST_BOX
*/

ul.item.box.column_3 li,
ul.item.box.column_4 li,
ul.item.box.column_5 li{
	width: 48%;
}

ul.item.box.sp_full{
	margin-left: 0%;
}

ul.item.box.sp_full li{
	width: 100% !important;
	margin: 0 0 4% 0;
}
ul.item.box.fix li div.image{
height: 100px;
}
ul.item.box.sp_full li div.image{
	height: 150px;
}

.news ul.item.box li p.title{
font-size: 12px;
}


/**
FLEXBOX
*/

.flexbox{
	 justify-content: space-around;
	 -js-display: content;
	 
	display: content;
    -webkit-flex-wrap: content;
    flex-wrap: wrap;
    align-products: stretch;
	
	justify-content: flex-start;
    justify-content: space-between;
}

.flexbox li {
	list-style: none;
	width: 100%;
}

.flexbox li img{
	width: 100%;
}


.flexbox.column .sub{
	flex: 100%;
	margin: 1em 0 0 0;
}
.flexbox.normal div.sub{
    flex: 100%;
    margin: 1em 0 0 0;
}

.flexbox.column .main{
	flex: 100%;
}

.flexbox.list .main{
	flex: 3 !important;
}

.flexbox.column_3 li,
.flexbox.column_4 li,
.flexbox.column_5 li{
	width: 49%;
}

.flexbox.sp_full li{
	width: 100%;
	margin-bottom: 5%;
}


/**
MAP
*/

.map iframe{
	height: 250px;
}


/**
FORM
*/

* {
    -webkit-appearance: none;
}

input, button, textarea, select{
	-webkit-appearance: none;
	border-radius: 0;
}

div.form{
	padding: 30px 20px;
}

div.form dl dt,
div.form dl dd{
	float: none;
	clear: both;
	width: 100%;
	margin: 0;
}
div.form dl dt{
	padding-bottom: 0;
}
div.form .caution{
	display: block;
	margin-top: 5px;
}



/**
INPUT
*/

input[type="text"],
input[type="password"],
input[type="email"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
input[type="text"].size_s,
input[type="text"].size_m,
input[type="text"].size_l,
textarea,
select{
	width: 100%;
}


/**
BUTTON
*/

/*input[type="submit"].btn,
button,
a.btn{
	height: 30px;
	line-height: 30px;
	padding: 0 10px;
}*/

input[type="submit"].btn.size_l,
button.size_l,
a.btn.size_l{
	height: 40px;
	line-height: 40px;
	padding: 0 15px;
}


input[type="submit"].btn.size_2l,
button.size_2l,
a.btn.size_2l{
	height: 50px;
	line-height: 50px;
	padding: 0 20px;
}



/**
FOOTER
*/

footer{
	padding: 20px;
}

footer ul{
	margin: 0;
}
footer ul li{
	width: 100% !important;
	padding: 20px 0 0 0;
}
footer ul li.menu{
	border-top: solid 1px rgba(255,255,255,.2);
}
footer ul li li{
	border: none;
	padding: 0;
}


footer ul li.data{
	padding-right: 0;
}
footer ul li.data p.title img {
    height: 60px;
	width: inherit !important;
}
footer ul li.data div.another_shop p.title img {
    height: 25px;
}

footer ul li.menu ul li img{
	width: inherit;
}

footer ul li.data ul li.tel span{
	display: block;
	margin-right: 0;
}


/**
INFO
*/

.box.info.bottom ul li{
	width: 100%;
	margin: 0 0 1% 0;
}


/**
ACCORDION
*/




/**
HOME
*/


.home #contents section{
	padding:  20px 0px;
}


.home .news ul{
	margin: 0;
}
.home .news ul li{
	margin-bottom: 20px;
}
/*.home .news ul li:last-child{
display: none;
}*/

.home .news ul.item.box.column_3 li{
	/*width: 100% !important;*/
}

.home section.products ul.recommend li div.image{
	height: 120px;
}

.home section.products ul.recommend{
	margin-left: 0;
}
.home section.products ul.recommend li{
	width: 100%;
	margin: 0 0 5% 0;
}

section.products ul.products li:nth-child(1),
section.products ul.products li:nth-child(2){
	width: 100%;
}
section.products ul.flexbox li div.image{
	margin-bottom: 0;
}
section.products ul.flexbox li{
	margin-bottom: 2%;
}

section.products ul.products li:nth-child(1) div.image p.title, section.products ul.products li:nth-child(2) div.image p.title {
    font-size: 40px;
}


section.products ul.products li div.image p.title{
	font-size: 18px;
}


.home section.store ul li{
	margin-bottom: 50px !important;
}

section.products ul.products li .hover_text .text p.caption{
	display: none;
}

.hover_text .text.mask img{
	height: 50px;
}


.home section.store ul li {
	margin-top: 30px;
}
.home section.store ul li .logo img{
	height: 40px;
}
.home section.store ul li.rinrin .logo img{
	height: 30px;
}




/*
STORE
*/


body.store  section.intro p.logo img{
	height: 80px !important;
}


div.main_image div.box_text{
	position: inherit;
	background: rgba(0,0,0,0.8);
	padding: 20px;
}
div.main_image div.box_text p.logo img{
	height: 100px;
}
.cover:before{
	display: none;
}
div.main_image div.box_text p{
	text-align: left;
}
div.main_image div.box_text p br{
	display: none;
}


.store div.main_image div.box_text{
	left: 0;
	padding: 1px 15px 15px 15px;
}
.store div.main_image div.box_text p {
    font-size: 12px;
    line-height: 1.6;
    font-weight: nomal;
}
.store div.main_image div.box_text p.catch {
    font-size: 15px;
}


body.store section.intro p.logo img {
    height: 80px;
	width: auto;
}


body.store section.data ul li{
	width: 100%;
}

body.store section.data ul li.info{
	margin-bottom: 3em;
}

body.store section.photos ul li:first-child{
	width: 100% !important;
}


/*
ABOUT
*/

body.about .intro div.box_text{
	position: absolute;
	background:none;
}
	
body.about .intro p.catch{
	font-size:18px;
}

body.about p br{
	display: inherit !important;
}

body.about .greeting ul {
    margin-top: 20px;
}

body.about .greeting div.main_column {
    margin-top: 0px;
}

body.about .process p{
	margin: 5px 0;
	font-size: 14px;
}
	
body.about .process ul li{
	width: 100%;
}

body.about div.main_image{
	margin-bottom: 0px;
}


body.about .history table.list th{
	width: 30%;
}
body.about .history table.list td br{
	display: none;
}



/**
CONTACT
*/

.contact section.tel {
    padding-bottom: 0 !important;
    padding-top: 0px !important;
}

.contact .tel section{
	padding: 20px !important;
}
.contact .tel ul li img{
	width: inherit;
}

.contact .tel ul li.tel{
	margin-bottom: 30px !important;
	padding-bottom: 30px;
}

}