@charset "utf-8";


/* --------------------------------------------------------------------------------
	タグ
-------------------------------------------------------------------------------- */
html {
	
}
body {
	margin: 0;
	padding:0;
	min-width: 1200px;
	line-height: 1.5;
	text-size-adjust: 100%;
	
	font-family: "hiragino-kaku-gothic-pron", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 16px;
	
	color: #312420;
}

img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

address{
	font-style: normal;
}


/* --------------------------------------------------------------------------------
	共通
-------------------------------------------------------------------------------- */
.common {
	text-align: left;
	font-size: 14px;
}

.common * {
	margin: 0;
	padding: 0;
	font-family: "hiragino-kaku-gothic-pron", sans-serif;
	font-style: normal;
}

.common h1,
.common h2,
.common h3,
.common h4,
.common h5,
.common h6 {
	font-size: 1em;
}
.common ol,
.common ul {
	list-style: none;
}
.common table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 1em;
}
.common a,
.common a:link,
.common a:visited {
	text-decoration: none;
	color: #312420;
	-webkit-tap-highlight-color: rgba(0,0,0,0.1);
	tap-highlight-color: rgba(0,0,0,0.8);
}
.common a:hover,
.common a:active {
	text-decoration: underline;
}

input,
select,
textarea {
	outline: none !important;
	box-shadow: none !important;
}


/* --------------------------------------------------------------------------------
	共通クラス
-------------------------------------------------------------------------------- */
.clear {
	clear:both;
}
br.clear {
	display: block;
	margin: 0;
	padding: 0;
	clear: both;
	height: 0;
	border: none;
	visibility: hidden;
	font-size: 0;
}
.clearfix::after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height:1%;
}
* html .clearfix {
	height:1%;
	/*\*//*/
	height:auto;
	overflow:hidden;
	/**/
}

.font-vdl-v7,
.font-vdl-v7 * {
	font-family: "vdl-v7marugothic", sans-serif;
	font-weight: 700;
}


/* --------------------------------------------------------------------------------
	デバイスごとの表示・非表示
-------------------------------------------------------------------------------- */
.device-sp{
	display: none;
}
.device-sp-inline {
	display: none;
}
.device-pc {
	display: block;
}
.device-pc-inline {
	display: inline;
}

.main-contents-inner {
	width: 1000px;
	margin: 0 auto;
}


/* --------------------------------------------------------------------------------
	container
-------------------------------------------------------------------------------- */
#container {
}


/* --------------------------------------------------------------------------------
	header
-------------------------------------------------------------------------------- */
#header {
}

/* ----------------------------------------
ヘッダーコンテンツ
---------------------------------------- */
#header .h-contents {
}

/* ----------------------------------------
customer表示切り替え
---------------------------------------- */
/********** ログイン・ログアウトの表示切り替え：ログアウト時 **********/
.my-false .logout {
	display: block !important;
}
.my-false .login {
	display: none !important;
}
/********** ログイン・ログアウトの表示切り替え：ログイン時 **********/
.my-true .logout {
	display: none !important;
}
.my-true .login {
	display: block !important;
}


/* --------------------------------------------------------------------------------
	header
-------------------------------------------------------------------------------- */
#header {
	width: 1000px;
	height: 550px;
	background: #fff;
	margin: 0 auto;
	position: relative;
}


/* ----------------------------------------
headline
---------------------------------------- */
#header .headline {
	padding: 15px 0 25px;
	text-align: center;
	font-size: 26.45px;
	color: #392c28;
}


/* ----------------------------------------
h-btn-signboard
---------------------------------------- */
#header .h-btn-signboard {
	display: flex;
	
	width: 100%;
	padding: 0 7px 0 30px;
}


/********** メニューボタン **********/
#header .h-btn-menu {
	width: 160px;
	height: 160px;
	margin: 0 80px 0 0;
	padding: 25px 0 0;
}
#header .h-btn-menu .menu-icon-open,
#header .h-btn-menu .menu-icon-close {
	display: flex;
	justify-content: center;
	
	width: 100%;
	padding: 0 0 20px;
}

/* ハンバーガーメニューボタン */
#header .h-btn-menu-area {
	cursor: pointer;
}
#header .h-btn-menu .hamburger-menu {
	position: relative;

	width: 84px;
	height: 62px;
}
#header .h-btn-menu .hamburger-menu span {
	position: absolute;
	
	display: block;
	width: 100%;
	height: 11px;
	background-color: #9fc87a;
	
	border-radius: 5px;
}
#header .h-btn-menu .hamburger-menu span:nth-of-type(1) {
	top: 0;
}
#header .h-btn-menu .hamburger-menu span:nth-of-type(2) {
	top: calc(50% - 6px);
}
#header .h-btn-menu .hamburger-menu span:nth-of-type(3) {
	bottom: 0;
}

/* クローズボタン */
#header .h-btn-menu .h-menu-btn-close .hamburger-menu span {
	position: absolute;
	
	display: block;
	width: 100%;
	height: 11px;
	background-color: #9fc87a;
	
	border-radius: 5px;
}
#header .h-btn-menu .h-menu-btn-close .hamburger-menu span:nth-of-type(1) {
	-webkit-transform: translateY(25px) rotate(-45deg);
	transform: translateY(25px) rotate(-45deg);
}
#header .h-btn-menu .h-menu-btn-close .hamburger-menu span:nth-of-type(2) {
	opacity: 0;
}
#header .h-btn-menu .h-menu-btn-close .hamburger-menu span:nth-of-type(3) {
	-webkit-transform: translateY(25px) rotate(45deg);
	transform: translateY(-25px) rotate(45deg);
}

/* 通常時 切り替え */
#header .h-btn-menu .h-menu-btn-open {
	display: block;
}
#header .h-btn-menu .h-menu-btn-close {
	display: none;
}

/* アクティブ 切り替え */
#header .h-btn-menu.menu-active .h-menu-btn-open {
	display: none;
}
#header .h-btn-menu.menu-active .h-menu-btn-close {
	display: block;
}

/* メニューラベル */
#header .h-btn-menu .menu-label-open {
	text-align: center;
	color: #9fc87a;
	font-weight: 600;
	font-size: 21.22px;
}

/********** ロゴ **********/
#header .h-signboard {
	width: 460px;
	margin: 0 108px 0 0;
}
#header .h-signboard a {
	display: block;
}
#header .h-signboard img {
	display: block;
}

/********** カートボタン **********/
#header .h-btn-menu-cart-area {
	padding: 2px 0 0;
}
#header .h-btn-menu-cart {
}
#header .h-btn-menu-cart a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
	width: 160px;
	height: 160px;
	padding: 0 5px 5px 0;
	text-decoration: none;
}
#header .h-btn-menu-cart img {
	width: 78px;
}
#header .h-btn-menu-cart .menu-icon-cart {
	padding: 0 0 10px;
}
#header .h-btn-menu-cart .menu-label-cart {
	padding: 0 15px 0 2px;
	color: #9fc87a;
	font-weight: 600;
	font-size: 21.22px;
}


/* ----------------------------------------
h-nav
---------------------------------------- */
#header .h-nav ul {
	display: flex;
	justify-content: space-between;
	
	width: 100%;
}
#header .h-nav ul li {
	width: calc(100% / 5);
	border-right: solid 1px #fff;
}
#header .h-nav ul li:last-child{
	border-right: none;
}
#header .h-nav ul li a,
#header .h-nav ul li.h-nav-character .h-nav-open-close-btn {
	cursor: pointer;
	
	display: block;
	padding: 50px 0 0;
	text-align: center;
	text-decoration: none;
	color: #000;
	background-color: #ffdeb3;
	background-repeat: no-repeat;
	font-size: 29.39px;
}

/* h-nav-newarrival */
#header .h-nav ul li.h-nav-newarrival a {
	background-image: url("../images/common/h-nav-newarrival.svg");
	background-size: 55px auto;
	background-position: 50% 5px;
}

/* h-nav-restock */
#header .h-nav ul li.h-nav-restock a {
	background-image: url("../images/common/h-nav-restock.svg");
	background-size: 41px auto;
	background-position: 50% 5px;
}

/* h-nav-character */
#header .h-nav ul li.h-nav-character .h-nav-open-close-btn {
	background-image: url("../images/common/h-nav-character.svg");
	background-size: 51px auto;
	background-position: 50% 5px;
}

/* h-nav-favorite */
#header .h-nav ul li.h-nav-favorite a {
	background-image: url("../images/common/h-nav-favorite.svg");
	background-size: 47px auto;
	background-position: 50% 7px;
}

/* h-nav-my */
#header .h-nav ul li.h-nav-my a {
	background-image: url("../images/common/h-nav-my.svg");
	background-size: 40px auto;
	background-position: 50% 7px;
}


/********** 検索 **********/
#header .search {
	position: relative;
	
	width: 860px;
	margin: 0 0 14px 80px;
	padding: 25px 0 0;
}


/* テキスト */
#header .search input[type="text"] {
	border: solid 1px #000;
	border-radius: 50px;
	display: block;
	padding: 14.5px 120px 14.5px 20px;
	font-size: 30px;
}


/* ボタン */
#header .search input[type="image"] {
	position: absolute;
	top: 41px;
	right: 45px;
	
	display: block;
	width: 46px;
	height: auto;
}

/********** お知らせ **********/
#header .oshirase {
	text-align: center;
	font-size: 38.44px;
}


/* ----------------------------------------
h-menu
---------------------------------------- */
#header .h-menu {
	position: absolute;
	top: 240px;
	left: 50%;
	z-index: 99;
	
	width: 1000px;
	margin-left: -500px;
	
	padding: 0 0 46px;
	background: #fff;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	
	font-weight: 300;
	
	display: none;
}

/********** リンク **********/
#header .h-menu a {
	color: #392c28;
}

/********** アイコン **********/
#header .h-menu .icon-char {
	position: absolute;
	top: 35px;
	right: 150px;
}
#header .h-menu .icon-char img {
	display: block;
	width: 165px;
	height: auto;
}

/********** .h-menu-box **********/
#header .h-menu .h-menu-box {
	padding: 0 50px;
}

/********** .h-menu-info **********/
#header .h-menu .h-menu-box .h-menu-info{
	padding: 20px 0 29px;
	border-bottom: solid 4px #DAD9D9;
}
#header .h-menu .h-menu-box .h-menu-info ul{
	display: flex;
	justify-content: space-between;
	width: 670px;
	margin: 0 auto;
}
#header .h-menu .h-menu-box .h-menu-info li{
	width: 263px;
}
#header .h-menu .h-menu-box .h-menu-info li a{
	display:flex;
	justify-content: center;
    align-items: center;
	font-size: 39.63px;
	color: #392c28;
	background: rgba(159,200,122,0.6);
	border-radius: 25px;
	width: 263px;
	height: 93px;
}

/********** .h-menu-list **********/
#header .h-menu .h-menu-list2 {
	padding: 0 0 24px;
}
#header .h-menu .h-menu-list > ul > li {
	border-bottom: solid 4px #DAD9D9;
}
#header .h-menu .h-menu-list > ul > li > a {
	display: block;
	padding: 35px 13px 35px 13px;
	font-size: 39.62px;
}
#header .h-menu .h-menu-list > ul > li > .heading {
	padding: 35px 13px 0 13px;
	font-size: 39.62px;
}
#header .h-menu .h-menu-list > ul > li > .history-box {
	padding: 0 13px 35px 13px;
}

/********** btn-open-close **********/
#header .h-menu .h-menu-list > ul > li > .btn-open-close {
	cursor: pointer;
	padding: 35px 13px 35px 13px;
	font-size: 39.62px;
	position: relative;
}
#header .h-menu .h-menu-list > ul > li > .btn-open-close::after{
	content: "＋";
	font-size: 43.65px;
	color: #392c28;
	position: absolute;
	right: 12px;
}
#header .h-menu .h-menu-list > ul > li > .btn-open-close-active::after{
	content: "－";
}
#header .h-menu .h-menu-list > ul > li > .contents-open-close > ul{
	text-indent: 4.6vw;
	padding: 0 0 30px;
}
#header .h-menu .h-menu-list > ul > li > .contents-open-close > ul > li{
	padding: 10px 0;
}
#header .h-menu .h-menu-list > ul > li > .contents-open-close > ul > li a{
	font-size: 36px;
}

/********** contents-open-close **********/
#header .h-menu .h-menu-list > ul > li > .contents-open-close {
	display: none;
}

/* h-menu-list-2 */
#header .h-menu .h-menu-list-2 > ul > li > a {
	display: block;
	padding: 35px 13px 35px 48px;
	font-size: 39.64px;
	background: url("../images/common/h-menu-list-2-arr.png") no-repeat 10px 50px;
	background-size: 21px auto;
}



/********** .other-cat **********/
#header .h-menu .other-cat{
	padding: 0 0 30px;
}
#header .h-menu .other-cat .heading{
	font-size: 39.64px;
	color: #392c28;
	padding: 35px 13px 35px 13px;
}
#header .h-menu .other-cat ul {
	display: flex;
	justify-content: space-between;
	
	width: 868px;
	margin: 0 auto;
}
#header .h-menu .other-cat ul li {
	width: 250px;
	text-align: center;
}
#header .h-menu .other-cat ul li a {
	display: block;
	font-size: 30.72px;
}
#header .h-menu .other-cat ul li a .label-cat {
	margin: 0 0 3px;
}
#header .h-menu .other-cat ul li a .img-cat img{
	width: 239px;
}

/********** h-sns **********/
#header .h-menu .h-sns ul {
	padding: 23px 0;
}
#header .h-menu .h-sns ul li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	
	width: 100%;
	padding: 9px 0 9px 13px;
	font-size: 39.64px;
}
#header .h-menu .h-sns ul li a .h-sns-icon {
	display: block;
	width: 86px;
}
#header .h-menu .h-sns ul li a .h-sns-icon img{
	width: 100%;
}
#header .h-menu .h-sns ul li a .h-sns-label {
	display: block;
	width: calc(100% - 115px);
}


/********** グローバルナビ：キャラクター **********/
#header .h-character {
	display: none;
	
	position: absolute;
	z-index: 90;
	
	width: 1000px;
	background: #fff;
}
#header .h-character .h-character-box {
	padding: 45px 50px 65px;
}
#header .h-character .h-character-heading {
	cursor: pointer;
	
	display: flex;
	justify-content: center;
	
	width: 100%;
	margin: 0 0 50px;
	padding: 0 0 30px 0;
	font-size: 64px;
	color: #9fc87a;
	border-bottom: solid 2px #dad8d9;
	
	background: url("../images/common/arrow-character.png") no-repeat calc(100% - 38px) 40%;
	background-size: 28px auto;
}
#header .h-character .h-character-heading .h-character-heading-box {
	display: block;
	text-align: center;
}
#header .h-character ul {
	display: flex;
	justify-content: space-between;
	
	width: 868px;
	margin: 0 auto;
}
#header .h-character ul li {
	width: 250px;
	text-align: center;
}
#header .h-character ul li a {
	display: block;
	font-size: 30.72px;
}
#header .h-character ul li a .label-cat {
	margin: 0 0 3px;
}
#header .h-character ul li a .img-cat img{
	width: 239px;
}





/* --------------------------------------------------------------------------------
	footer
-------------------------------------------------------------------------------- */
#footer {
	padding: 70px 0 80px;;
	
	color: #000000;
	background: #9fc87a;
}


/********** f-menu **********/
#footer .f-menu {
	padding: 0 0 50px;
}
#footer .f-menu ul {
	display: flex;
	justify-content: center;
}
#footer .f-menu ul li a {
	display: block;
	padding: 0 50px;
	text-align: center;
	color: #000000;
	font-size: 21.99px;
}


/********** copyright **********/
#footer .copyright {
	text-align: center;
	line-height: 1.6;
	font-size: 21.99px;
}
#footer .copyright small {
	font-size: 1em;
}

/* ----------------------------------------
pagetop
---------------------------------------- */
#footer #pagetop{
	position: fixed;
	bottom: 223px;
	right: 30px;
	z-index: 10;
	text-align: center;
}
#footer #pagetop .icon-pagetop {
	display: block;
}
#footer #pagetop a {
	position: relative;
	
	display: block;
	text-decoration: none;
}
#footer #pagetop .icon-pagetop img{
	position: relative;
	z-index: 0;
	
	display: block;
	width: 160px;
	margin: 0 0 -5px 0;
}
#footer #pagetop .txt-pagetop{
	position: absolute;
	margin-top: -7px;
	
	display: flex;
	justify-content: center;
	align-items: center;
	
	width: 168px;
	height: 168px;
	border-radius: 100%;
	font-size: 48.3px;
	font-weight: 600;
	color: #000;
	background: #9fc87a;
}


