@charset 'UTF-8';

/* SYSTEM */
body{
	color: #270E00;
	padding-right: 90px;
}
h1,h2,h3,h4,h5,h6,p,li,dt,dd,th,td,span,a{
	padding: 0;
	margin: 0;
	letter-spacing: .2em;
	font-family: "ten-mincho", "貂明朝", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
ul{
	list-style: none;
	padding: 0;
	margin: 0;
}
a:hover{
	opacity: .9;
	text-decoration: none;
}
img{
	max-width: 100%;
}

.gothic{
	font-family: "游ゴシック", "YuGothic", "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.wrap{
	max-width: 1280px;
	padding: 0 20px;
	margin: 0 auto;
}

.flex{
	display: flex;
	flex-wrap: wrap;
}
.col_2{
	width: 48%;
	margin: 1% 1% 3%;
}

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

.vert{
	-webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

/* HEADER */
header#rightmenu{
	position: fixed;
	z-index: 9;
	top: 0;
	right: 0;
	width: 90px;
	height: 100vh;
	background: #FFF;
}
header#rightmenu .header-logo {
	text-align: center;
	padding: 20px 14px 0;
}
header#rightmenu .header-logo p{
	margin-bottom: 10px;
}
header#rightmenu .header-logo p:last-child{
	margin-top: 1em;
}

header#rightmenu .header-toggle{
	padding: 20px 0;
}
header#rightmenu .header-toggle a{
	display: block;
	width: 35px;
	height: 20px;
	margin: 0 auto;
	position: relative;
	cursor: pointer;
}
header#rightmenu .header-toggle a span{
	display: block;
	width: 100%;
	height: 1px;
	background: #270E00;
	position: absolute;
	transition: all .3s ease;
}
header#rightmenu .header-toggle a span:nth-of-type(1){
	top: 0;
	left: 0;
}
header#rightmenu .header-toggle a span:nth-of-type(2){
	top: 10px;
	left: 0;
}
header#rightmenu .header-toggle a span:nth-of-type(3){
	top: 19px;
	left: 0;
}
header#rightmenu .header-toggle a.open span:nth-of-type(1){
	top: 6px;
	transform: rotate(45deg);
}
header#rightmenu .header-toggle a.open span:nth-of-type(2){
	opacity: 0;
}
header#rightmenu .header-toggle a.open span:nth-of-type(3){
	top: 6px;
	transform: rotate(-45deg);
}

header#rightmenu .header-icons{
	text-align: center;
	padding: 20px 26px;
	position: absolute;
	width: 100%;
    bottom: 40px;
    right: 0;
}
header#rightmenu .header-icons ul.system-icons{
	padding: 0 5px;
	margin-bottom: 60px;
}
header#rightmenu .header-icons ul li{
	margin-bottom: 1.2em;
}
header#rightmenu .header-icons ul.sns-icons{
	padding: 0 10px;
}
.ec-itemNav__nav li a {
	font-size: 14px;
}
.pagetop{
	cursor: pointer;
	position: absolute;
    bottom: 30px;
    right: 30px;
    width: 30px;
}

/* DRAWER */
div#drawer{
	position: fixed;
	width: 320px;
	height: 100vh;
	background: #FFF;
	border-right: 1px solid #270E00;
	top: 0;
	right: 0;
	transform: translateX(100%);
	padding: 10px;
	transition: all .3s ease;
	z-index: 8;
}
div#drawer.open{
	right: 90px;
	transform: translateX(0);
}
div#drawer .inner{
	height: 100%;
	overflow-y: scroll;
}
div#drawer .inner>div{
	margin-bottom: 2em;
}
div#drawer .inner h2{
	padding-left: 40px;
	margin-top: 3em;
	margin-bottom: 1em;
	position: relative;
	font-size: 18px;
	letter-spacing: 4px;
}
div#drawer .inner h2::before {
	content: '';
	width: 30px;
	height: 30px;
	position: absolute;
	left: 5px;
	bottom: -4px;
	background-image: url(../img/header/header-logo--icon.png);
	background-size: cover;
}
.ec-itemNav__nav{
	display: block;
	text-align: left;
}
.ec-itemNav__nav li {
	float: none;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	margin-bottom: 8px;
}
.ec-itemNav__nav li a{
	text-align: left;
}

/* FOOTER */
.ec-layoutRole__footer{
	margin-top: 4em;
}

.pagelink-banner-box{
	width: 50%;
	background-size: cover;
	background-position: center center;
	padding: 200px 20px;
	position: relative;
}
.pagelink-banner-box a{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	background: rgba(255,255,255,.2);
	opacity: 0;
	transition: all .3s ease;
}
.pagelink-banner-box a:hover{
	opacity: 1;
}
.pagelink-banner-box h3,
.pagelink-banner-box p{
	color: #FFF;
	text-align: center;
	text-decoration: none;
}
.pagelink-banner-box h3{
	margin-bottom: 2em;
}
.pagelink-banner-box img{
	width: 36px;
	transition: all .3s ease;
}

#category-section{
	padding-top: 3em;
}
#category-section h2{
	padding: 2em 0;
	font-size: 20px;
}
#category-section .category-box{
	position: relative;
	width: 25%;
}
.category-list.flex {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}
.product-list-header .category-path ul li:nth-child(1), .product-list-header .category-path ul li:nth-child(2), .product-list-header .category-path ul li:nth-child(3), .product-list-header .category-path ul li:nth-child(5), .product-list-header .category-path ul li:nth-child(5), .product-list-header .category-path ul li:nth-child(6), .product-list-header .category-path ul li:nth-child(7) {
	border-right: 0;
}
#category-section .category-box:after{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(39,14,0,.8);
	opacity: 0;
	transition: all .3s ease;
	z-index: 2;
}
header#rightmenu .header-logo h1 p:nth-child(2) img {
	width: 32px;
}
#category-section .category-box.on:after{
	opacity: 1;
}
table.haisou {
	overflow-x: scroll;
}
.haisou th, .haisou td {
	padding: 4px 20px;
	border: 1px solid #ddd;
}
.haisou th {
	background: #ddd;
}
#category-section .category-box a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 3;
}
#category-section .category-box img {
	max-width: 60%;
	max-height: 200px;
	margin: 3em auto 3em 14%;
}
#category-section .category-box h3 {
	font-size: 1vw;
	line-height: 2;
	position: absolute;
	top: 10%;
	right: 10%;
	letter-spacing: 0.3em;
}

.page-feature-section{
	padding: 1em 0 2em;
}
.page-feature-section .feature-banner{
	width: 44%;
	margin: 3%;
}

footer#footer{
	color: #FFF;
	background: #270E00;
	padding: 40px 0;
}
footer#footer a{
	color: #FFF;
	letter-spacing: 1px;
}

footer#footer .wrap.flex {
	align-items: center;
}

footer#footer .footer-logo{
	width: 9%;
	margin-right: 1%;
}
footer#footer .footer-logo h1 img {
	width: 60px;
}
footer#footer .footer-address{
	width: 19%;
	margin-right: 1%;
}
footer#footer .footer-menu{
	width: 70%;
}

footer#footer .footer-menu .footer-menu--up{
	display: flex;
	margin-bottom: 2em;
}
footer#footer .footer-menu .footer-menu--up .footer-menu--list{
	padding-right: 3em;
}
footer#footer .footer-menu .footer-menu--up .footer-menu--list .footer-menu--list---listbox{
	display: flex;
}
footer#footer .footer-menu .footer-menu--up h3{
	font-weight: normal;
    font-size: 16px;
    padding: 6px 0 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid #FFF;
}
footer#footer .footer-menu .footer-menu--up ul{
	padding-left: 2em;
	list-style: disc;
	font-size: 14px;
	margin-right: 1em;
}
footer#footer .footer-menu .footer-menu--up ul li a{
	display: block;
	padding: 5px 0;
}

footer#footer .footer-menu .footer-menu--down{
	display: flex;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---01{
	width: 40%;
	padding-right: 20px;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---01 ul li{
	display: inline-block;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---01 ul li a{
	display: block;
	padding: 4px;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---01 ul.footer-system{
	margin-bottom: 2em;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---01 ul.footer-sns li a img{
	max-width: 20px;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---02{
	width: 60%;
	display: flex;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---02 .footer-common{
	margin-right: 2em;
}
footer#footer .footer-menu .footer-menu--down .footer-menu--down---02 .footer-common li a{
	display: block;
	padding: 5px 0;
}

#copyright{
	padding: 15px 0;
}
#copyright p{
	font-size: 12px;
}

/* PAGE COMMON */
#mv.page{
	padding: 60px 0;
	background-position: center;
	background-size: cover;
}
.front_page #mv h1 img {
	max-width: 300px;
}
#mv h1 img{
	max-width: 200px;
}
.ec-layoutRole .ec-layoutRole__contents{
	margin-top: 2em;
}
.ec-pageHeader h1{
	color: #270E00;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	padding: 0 0 1em;
}
.ec-borderedDefs dd {
	line-height: 2;
	font-size: 14px;
	padding-bottom: 6px;
}
.ec-borderedDefs dt {
	padding-top: 0;
	font-size: 14px;
	line-height: 2;
	padding-bottom: 6px;
}

h3.owner_title {
	text-align: center;
	margin-top: 20px;
}
p.sub_owner_text {
	text-align: center;
	margin-top: 10px;
	margin-bottom: 10px;
}
.about .col_2 {
	padding: 20px;
}
.about-sec .mainimg {
	margin-bottom: 1em;
	margin-top: 5em;
}
.col_2.od2 {
	order: 2;
}
.col_2.od1 {
	order: 1;
}

h3.owner_title span {
	display: block;
	margin-top: 4px;
	font-size: 16px;
}

/* TOP */
#mv.top{
	padding: 140px 20px;
	background-size: cover;
}
#mv.top p{
	color: #FFF;
    line-height: 3;
    font-size: 18px;
    width: 30%;
    margin-top: -3em;
    margin-left: auto;
}
.top-news--section{
	background: #270E00;
	padding: 2em;
}
.top-news--section a{
	color: #FFF;
}
.top-news--section .news-box{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	letter-spacing: 4px;
}
.top-news--section .news-box ul{
	display: flex;
}
.top-news--section .news-box .news-head{
	color: #B4814E;
	padding: 0 1em;
	font-size: 18px;
}
.top-news--section .news-box .news-link{
	font-size: 14px;
}

.top-feature--section{
	position: relative;
}
.top-feature--section .slick-slider{
	margin: 0;
}
.top-feature--section .top-slider-arrow{
	position: absolute;
	width: 5%;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
}
.top-feature--section .top-slider-arrow.prev-arrow{
	left: 17.5%;
}
.top-feature--section .top-slider-arrow.next-arrow{
	right: 17.5%;
}
.top-feature--section .slick-dots{
	bottom: 10px;
}
.slick-dots li.slick-active button:before{
	background: #B4814E !important;
}

.top-section{
	color: #FFF;
	padding: 17vw 0 6vw;
}
.top-section .wrap{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-direction: row-reverse;
}
.top-section h2{
	font-size: 3em;
	font-weight: normal;
	padding: 5px 8px;
	letter-spacing: .25em;
}
.top-section small{
	display: block;
	padding: 5px 0;
	margin-left: 10em;
	letter-spacing: .25em;
}
.top-section p{
	letter-spacing: .5em;
	line-height: 2;
}

/* ABOUT */
.about h1{
	font-size: 1.6em;
	margin: 1em 0 2em;
}
.about-sec .mainimg{
	margin-bottom: 1em;
}
.about-sec .col_2 p{
	line-height: 2;
}
.about-sec .lefty-img{
	width: calc((100vw - 90px)/2);
	margin: 1em auto 2em;
	margin-left: calc( (100vw - 90px - 1120px ) / 2 * -1);
}
.about-sec .righty-img{
	width: calc((100vw - 90px)/2);
	margin: 1em auto 2em;
}
@media only screen and (max-width: 1210px){
	.about-sec .lefty-img{
		width: 100%;
		margin: 1em auto 2em;
	}
	.about-sec .righty-img{
		width: 100%;
		margin: 1em auto 2em;
	}
}
.about-sec.about-company h2{
	font-size: 1.6em;
	font-weight: normal;
	margin-bottom: 1em;
	color: #000;
}
.about-sec.about-company dl{
	display: flex;
	width: 100%;
	margin: 0;
	border-bottom: 1px solid #000;
}
.about-sec.about-company dl dt,
.about-sec.about-company dl dd{
	padding: .8em;
}
.about-sec.about-company dl dt{
	width: 11rem;
}

/* ITEM LIST */
.ec-shelfGrid .ec-shelfGrid__item {
	margin: 0;
	padding: 30px 16px !important;
	border-left: 0;
}
.ec-shelfGrid .ec-shelfGrid__item:nth-of-type(4n){
	border-right: 0;
}
.ec-shelfGrid .ec-shelfGrid__item p{
	margin-bottom: 1em;
}
.product-list-header h1{
	margin: 3em 0 1em;
	color: #270E00;
}
.product-list-header .category-path{
	padding: 1em 0 3em;
	max-width: 940px;
	margin: 0 auto;
}
.product-list-header .category-path ul{
	display: flex;
	flex-wrap: wrap;
}
.product-list-header .category-path ul li{
	display: block;
	width: 25%;
	border-left: 1px solid #270E00;
	border-right: 1px solid #270E00;
	margin-bottom: 1em;
}
.product-list-header .category-path ul li a{
	display: block;
	font-size: 14px;
	color: #270E00;
	padding: .4em 1em;
	text-align: center;
}
.ec-searchnavRole .ec-searchnavRole__infos{
	margin-bottom: 3em;
	border: 0;
}
.ec-shelfGrid__item form{
	display: none;
}
.ec-shelfGrid__item p.title{
	color: #323232;
	font-size: 16px;
	font-weight: bold;
}
.ec-shelfGrid__item p.price02-default{
	color: #323232;
	font-size: 16px;
	font-weight: bold;
}
.ec-shelfGrid__item p.price02-default .classprice{
	margin-bottom: 6px;
}
.ec-shelfGrid__item p.price02-default .classprice span{
	font-size: 12px;
	font-weight: normal;
	margin-right: 1em;
}
.ec-shelfGrid__item p.price02-default em.tax{
	font-size: 12px;
	font-weight: normal;
	font-style: normal;
}

/* ITEM DETAIL */
.ec-productRole{
	margin-top: 2em;
}
.ec-grid2 .ec-grid2__cell{
	width: 60%;
}
.ec-grid2 .ec-grid2__cell:last-child{
	width: 40%;
}
.ec-sliderItemRole .slideThumb{
	width: 25%;
}
.ec-productRole .ec-productRole__title .ec-headingTitle{
	font-size: 24px;
	font-weight: bold;
}
.ec-productRole .ec-productRole__tags{
	margin: 1em 0;
	padding: 0;
	border: 0;
}
.ec-productRole__description dl{
	width: 60%;
	border-bottom: 1px dashed #000;
	display: flex;
	margin: 0;
}
.ec-productRole__description dl dt,
.ec-productRole__description dl dd{
	padding: 10px;
	font-size: 14px;
}
.ec-classprice{
	margin: 2em 0;
}
.ec-classprice p{
	font-size: 22px;
	font-weight: bold;
	color: #6F6F6F;
	letter-spacing: 1px;
}
.ec-classprice p span{
	font-size: 16px;
	font-weight: normal;
	margin-right: 1em;
	width: 9rem;
    display: inline-block;
}
.ec-classprice p em.tax{
	font-size: 14px;
	font-weight: normal;
	font-style: normal;
}
.ec-productRole__price{
	border: 0;
    margin-bottom: 15px;
    padding: 0;
}
.ec-price .ec-price__price{
	color: #323232;
	letter-spacing: 1px;
}
.ec-price .ec-price__tax{
	color: #6F6F6F;
	letter-spacing: 0;
}
.ec-blockBtn--action{
	background-color: #270E00;
	border-color: #270E00;
}
.ec-blockBtn--action:hover{
	background-color: #D85057;
	border-color: #D85057;
}
.ec-blockBtn--cancel{
	background-color: #838383;
	border-color: #838383;
	height: 42px;
    line-height: 42px;
}

#RelatedProduct-product_area{
	margin: 3em 0 1em;
}
#RelatedProduct-product_area h3{
	color: #270E00;
	font-weight: normal;
	margin-bottom: 1em;
}

/* OTHER PAGES */
.ec-heading-bold {
    background-color: #D85057;
    color: #FFF;
    padding: 10px;
    font-size: 1.6rem;
    margin-top: 40px;
}
.ec-heading-bold.num{
	color: #D85057;
	background: transparent;
	font-size: 18px;
	font-weight: bold;
	margin: 20px 0;
	border-bottom: 5px solid #D85057;
}

/* AGE POPUP */
#js-popup{
	position: fixed;
	display: none;
    background: rgba(39,14,0,.8);
    width: 100vw;
    height: 100vh;
    z-index: 10;
}
#js-popup .popup-inner{
	color: #FFF;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 90%;
    max-height: 90%;
}
#js-popup .popup-inner p.top{
	font-size: 1.2em;
}
#js-popup .popup-inner p{
	margin-bottom: 1em;
}
#js-popup .popup-inner p#closebtn{
	padding: 10px 20px;
	max-width: 340px;
	font-weight: bold;
	color: #270E00;
	background: #FFF;
	cursor: pointer;
	margin: 2em auto;
}