﻿/* =====================================================================
*
*    3. Yahoo UI Library Fonts CSS
*    http://developer.yahoo.com/yui/fonts/
*    *Copyright (c) 2006, Yahoo! Inc. All rights reserved.
*    *http://developer.yahoo.com/yui/license.txt
*    
*    Font-size Adjustment
*    
*     77% = 10px    |   122% = 16px |   167% = 22px 
*     85% = 11px    |   129% = 17px |   174% = 23px
*     93% = 12px    |   136% = 18px |   182% = 24px
*    100% = 13px    |   144% = 19px |   189% = 25px
*    107% = 14px    |   152% = 20px |   197% = 26px
*    114% = 15px    |   159% = 21px |   204% = 27px
*    212% = 28px    |   159% = 29px |   197% = 30px
*
* =================================================================== */

body {
    font-size: 13px;
    *font-size: small;
    *font: x-small;
}

table {
    font-size: inherit;
    font: 100%;
}
 
select, input, textarea {
    font-size: 99%;
}

*, ::before, ::after {
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

img { max-width: 100%; height: auto; }

/* =====================================================================
*
*    フォント
*
* =================================================================== */

/* ---------------------------------
*    Font Family
*/

body {
    font-family: 'icon','ヒラギノ角ゴ ProN W3','helvetica','arial','verdana','sans-serif';
}

/* ---------------------------------
*    Font Size
*/

.xx-large  { font-size: 200%; line-height: 1.8em; }
.mid-large { font-size: 182%; line-height: 1.4em; }
.x-large   { font-size: 164%; line-height: 1.8em; }
.large     { font-size: 144%; }
.mid       { font-size: 122%; }
.regular   { font-size: 107%; }
.small     { font-size:  92%; }
.mid-small { font-size:  85%; letter-spacing: 1px; }
.x-small   { font-size:  77%; letter-spacing: 1px; }


/* =====================================================================
*
*    リンク
*
* =================================================================== */

/* \*/ a { outline:none; overflow:hidden; } /**/
/* \*/ a:focus { outline:none; overflow:hidden; } /**/

a:link        { color: #000000; text-decoration: none; }
a:visited     { color: #000000; text-decoration: none; }
a:hover       { color: #000000; text-decoration: none; }
a:active      { color: #000000; text-decoration: none; }


/* =====================================================================
*
*    共通
*
* =================================================================== */

/* ---------------------------------
*    clearfix
*/

.clearfix { min-height: 1%; }

.clearfix:after {
    content: ".";
    display: block;
    height: 0px;
    clear: both;
    visibility: hidden;
}

.clearfix { display: inline-table; }

/* Hides from Mac IE \*/
* html .clearfix { height: 1px; }
.clearfix { display: block; }
/* Hides from Mac IE */

/* ---------------------------------
*    汎用クラス
*/

.line-through { text-decoration: line-through !important; }
.unit { margin-top: 30px; padding: 0 10px; }
.unit:after { content: ""; clear: both; display: table; }
.title-unit { font-size: 17px; margin-bottom: 1em; }
.title-unit .icon { display: inline-block; margin-right: 5px; vertical-align: middle; }
.title-unit .icon img { width: 24px; height: 24px; }
.underline { text-decoration: underline !important; }

/* text-align */
.ta-l { text-align: left !important; }
.ta-c { text-align: center !important; }
.ta-r { text-align: right !important; }

/* vertical align */
.va-t { vertical-align: top !important; }
.va-m { vertical-align: middle !important; }
.va-b { vertical-align: bottom !important; }

/* link button */
.link-more_center { text-align: center; margin-top: 20px; }
.link-more a,
 a.link-more {
	border: 1px solid #000;
	border-radius: 100px;
	color: #000;
	display: inline-block;
	line-height: 1;
	padding: 1em 1.5em;
	text-align: center;
	text-decoration: none;
}
.link-more a:before,
a.link-more:before {
	content: "";
	display: inline-block;
	margin-right: 8px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	margin-top: -.1em;
}
/* ---------------------------------
*    ボタン
*/

.btn {
    text-align: center;
    display: block;
    text-decoration: none !important;
	border: none;
	border-radius: 3px;
	cursor: pointer;
	line-height: 1;
	padding: 1em .25em;
}

/* ---------------------------------
*    リンクリスト
*/
.list-link {
	background: #FFF;
	border: 1px solid #CCC;
	border-radius: 3px;
}
.list-link li {
	width: 100%;
}
.list-link li + li {
	border-top: 1px solid #EEE;
}
.list-link li a {
	display: block;
	padding: 1.25em 15px 1.25em 1em;
	position: relative;
}
.list-link li a:after {
	content: "";
	display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -3px;
}
/* ---------------------------------
*    タイトル
*/

.unit h3,
.unit .unit-title {
	font-size: 17px;
	font-weight: normal;
	margin-bottom: 20px;
	padding-left: 22px;
}
.unit h3::before,
.unit .unit-title::before {
	background: #0B377C;
	content: "";
	display: inline-block;
	height: 4px;
	width: 10px;
	margin-right: 10px;
	margin-left: -22px;
	vertical-align: middle;
}
/* ---------------------------------
*    グローバルナビ
*/

/* 1列 */
.global-nav-1 {
	border-width: 0 0 1px !important;
}
.global-nav-1 li {
    width: 100%;
/*    border-bottom: 1px solid #eee;*/
}
/*
.global-nav-1 li:first-child { border-top: 1px solid #eee; }
*/
.global-nav-1 li a {
    display: block;
    padding: 1em;
}
.global-nav-1 ul { border: none !important; }
/* 2列 */
.global-nav-2 li {
    display: inline-table;
    width: 50%;
    float: left;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.global-nav-2 li:first-child, .global-nav-2 li:nth-child(2) { border-top: 1px solid #eee; }
.global-nav-2 li:nth-child(even) {
    border-right: none;
}

.global-nav-2 li a {
    display: table-cell;
    padding: 0 .5em;
    height: 60px;
    vertical-align: middle;
    line-height: 1.5;
}

/* ---------------------------------
*    商品一覧表示
*/

.product-price { color: #C01708; line-height: 1.3; }
.product-price .special { color: #f00; }
.product-price .line-through {
    display: block;
    color: #000;
    /*margin-bottom: .3em;*/
}

.product-name .icon { line-height: 0; }
.product-name .icon img {
    height: 20px;
    margin: 0 1px 1px 0;
    vertical-align: middle;
}

/* 2列 */
.product-list-2 {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.product-list-2 li {
	background: #FFF;
	padding: 0 5px;
    position: relative;
    width: 48%;
    margin: 0 1% 1.5em;
}
.product-list-2 li a {
	background: #FFF;
	padding: 5px;
}
.product-list-2 li a > .product-name { display: none; }
.product-list-2 li div {
    width: 90%;
    margin: 0 auto;
}

.product-list-2 li div p { margin-bottom: .3em; }

.product-list-2 .product-image { position: relative; }
.product-list-2 .product-image img {
    width: 100%;
    height: auto;
}

.product-list-2 .product-name {
    line-height: 1.3;
    padding: .3em 0;
}

.product-list-2 .sold-out {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    background-color: #000;
    color: #fff;
    text-align: center;
    height: 20px;
    line-height: 20px;
    margin-top: -10px;
    filter: alpha(opacity=30);
    -moz-opacity: 0.3;
    opacity: 0.3;
}

/* 3列 */
.product-list-3 {
    margin-top: 1.5em;
}

.product-list-3 li {
    float: left;
    position: relative;
    width: 33.333%;
    margin-bottom: 1.5em;
}

.product-list-3 li div {
    width: 90%;
    margin: 0 auto;
}

.product-list-3 .product-image { position: relative; }
.product-list-3 .product-image img {
    width: 100%;
    height: auto;
}

.product-list-3 .rank {
    position: absolute;
    top: 0;
    left: 0;
    padding: 5px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    background-color: #000;
}

.product-list-3 .rank1 { background-color: #FFB100; }
.product-list-3 .rank2 { background-color: #B6B6B6; }
.product-list-3 .rank3 { background-color: #AA6D44; }

.product-list-3 .product-name span {
    line-height: 1.6;
    padding: .3em 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.product-list-3 .sold-out {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    background-color: #000;
    color: #fff;
    text-align: center;
    height: 20px;
    line-height: 20px;
    margin-top: -10px;
    filter: alpha(opacity=30);
    -moz-opacity: 0.3;
    opacity: 0.3;
}


/* 1列（商品一覧リスト型） */

.product-list-2 .product-image-variation { display: none; }
.product-list { padding: 0 10px; }
.product-list li {
    background: #FFF;
    border: 1px solid #EEE;
    border-radius: 3px;
    position: relative;
    padding: 10px;
	margin-bottom: 10px;
}
.product-list li:after {
	clear: both;
	content: "";
	display: block;
}
.product-list li a {
	display: block;
}
.product-list .product-image {
    float: left;
/*	margin-bottom: 10px;*/
	width: 106px;
}

.product-list .product-image img {
    width: 90px;
}
/*.product-list .product-text .product-name { display: none; }*/


.product-list .product-name {
	font-size: 14px;
	margin-bottom: 10px;
	text-decoration: none;
}
.product-list .product-text {
	float: right;
	margin-left: -116px;
	padding-left: 116px;
	width: 100%;
}
.product-list .product-price,
.product-list .product-set-promotion,
.product-list .product-image-variation {
/*    float: right;
    width: 50%;
    margin-bottom: .3em;
    line-height: 1.3;*/
}
.product-list .product-text + .product-price {
	clear: both;
	display: block;
}

.product-list .product-image-variation { clear: both; }
.product-list .product-image-variation img { width: 45px; }

.product-list .sold-out {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    background-color: #000;
    color: #fff;
    text-align: center;
    height: 20px;
    line-height: 20px;
    margin-top: -10px;
    filter: alpha(opacity=30);
    -moz-opacity: 0.3;
    opacity: 0.3;
}

/* ranking */
.product-list_ranking {}
.product-list_ranking li { float: left; width: 130px; overflow: visible; position: relative; height: 100%; min-height: 300px; }
.product-list_ranking li + li { margin-left: 10px; }
.product-list_ranking a { overflow: visible; }
.product-list_ranking .product-image { float: none; position: relative; margin: -10px -10px 15px; width: 130px; }
.product-list_ranking .product-image img { width: 100%; height: auto; }
.product-list .rank { background: #882525; border-radius: 100px; color: #FFF; display: block; position: absolute; width: 24px; height: 24px; line-height: 24px; text-align: center; top: -5px; left: -5px; }
.product-list_ranking .slick-list { overflow: visible; }
/* もっと見るボタン */

.unit .view-more a {
	border: 1px solid #000;
	border-radius: 100px;
	color: #000;
	display: inline-block;
	line-height: 1;
	padding: .75em 1.5em;
	text-align: center;
	text-decoration: none;
}
.unit .view-more a,
.link-more a {
	border: 1px solid #000;
	border-radius: 100px;
	color: #000;
	display: inline-block;
	line-height: 1;
	padding: .75em 1.5em;
	text-align: center;
	text-decoration: none;
}
.unit .view-more a:before,
.link-more a:before {
	content: "";
	display: inline-block;
	margin-right: 8px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	margin-top: -.1em;
}
.link-more_center { text-align: center; margin-top: 20px; }

/* ---------------------------------
*    ページトップ
*/

.page-top {}
.page-top a {
		background: rgba(0, 0, 0, .44) url(../Contents/images/common/icon_pagetop.png) no-repeat 50% 50%;
		border-radius: 100%;
    color: #fff;
		position: fixed;
		height: 50px;
		width: 50px;
		z-index: 9999;
		bottom: 20px;
		right: 10px;
		text-indent: -9999px;
		text-decoration: none;
		white-space: nowrap;
}

/* ---------------------------------
*    エラーページ/Error
*/

.error-unit {
    margin-bottom: 2em;
}

.error-unit h2 {
    padding: .5em;
    background-color: #CCC;
    font-size: 15px;
}

.error-unit .msg {
    padding: .5em;
    line-height: 1.5;
    font-size: 12px;
}

.error-unit .button {
    padding: 1em;
}

.error-unit .button-next .btn {
    padding: 1.5em 0;
    background-color: #000;
    color: #fff;
}

.error-unit .button-prev .btn {
    padding: 1.5em 0;
    background-color: #ccc;
}

.msg-alert {
    padding: 1em;
    text-align: center;
}

/* ---------------------------------
*    パンくず/ページャー
*/

.breadcrumbs {
	background: #FFF;
	border-bottom: 1px solid #DDD;
	font-size: 9px;
	overflow: hidden;
	position: relative;
}
	.breadcrumbs ul { text-align: left; }
	.breadcrumbs ul li {
		float: left;
		height: 28px;
		line-height: 28px;
		position: relative;
	}
	.breadcrumbs ul a,
	.breadcrumbs ul span { display: block; padding: 0 10px; }
	.breadcrumbs ul li + li { padding-left: 5px; }
	.breadcrumbs ul li + li:before,
	.breadcrumbs ul li + li:after {
		content: "";
		display: block;
		position: absolute;
		height: 28px;
		top: 0;
		border-top: 14px solid transparent;
		border-right: 7px solid transparent;
		border-bottom: 14px solid transparent;
	}
	.breadcrumbs ul li + li:before{
		 border-left: 7px solid #DDD;
		 left: 1px;
	}
	.breadcrumbs ul li + li:after{
		 border-left: 7px solid #FFF;
		 left: 0;
}

.pager-wrap {
	margin: 20px 10px;
}

.below .total { display: none; }

.pager-wrap .count .num {
	font-size: 16px;
}

.pager-wrap .pager {
	margin-top: 20px;
	text-align: center;
}
.pager-wrap .pager li {
    display: inline-block;
	padding: 0 4px;
	vertical-align: top;
}
.pager-wrap .pager li a,
.pager-wrap .pager li span {
	background: #FFF;
	border-radius: 3px;
    color: #333;
    display: block;
	font-size: 11px;
    text-align: center;
	width: 28px;
	line-height: 28px;
}
.pager-wrap .pager li.current span {
	background: #0B377C;
    color: #fff;
}
.pager-wrap .pager li.spacer:before { content: "…"; line-height: 28px; }

.above .pager-nums { display: none; }
.below .page-now { display: none; }

.pager-wrap .pager-nums {
    text-align: center;
    color: #fff;
    font-size: 14px;
    letter-spacing: 2px;
}

.pager-wrap .pager-nums a {
	background: #FFF;
    color: #333;
    display: inline-block;
    text-decoration: underline;
}


/* =====================================================================
*
*    ヘッダー
*
* =================================================================== */

.header {
	background: #FFF;
	border-bottom: 1px solid #DDD;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	height: 55px;
	padding: 9px 10px;
	position: relative;}

.header .logo-main {
	display: block;
	-webkit-flex-grow: 1;
	flex-grow: 1;
	-webkit-order: 2;
	order: 2;
	text-align: center;
}
	.header .logo-main img {
		width: 194px;
}
/* ロゴがテキストの場合 */

.header .logo-main h1 a {
	display: block;
}
.header-simple {
	border-bottom: 1px solid #DDD;
}

/* ヘッダーグローバルナビ */
.header nav {}
.header ul li {}
.header ul li a {}
.header ul li a.active {}
.header ul li a {}
.header ul li a#toggle-global-menu {
	font-size: 8px;
	font-weight: bold;
	-webkit-order: 1;
	order: 1;
}
.header ul li a#toggle-global-menu:before {
	content: "";
    display: block;
	margin: 0 auto 4px;
	background: url(../Contents/images/common/icon-header_menu.png) no-repeat 50% 50%;
	background-size: 23px;
	height: 23px;
	width: 23px;
}
.header ul li a#toggle-search {}
.header ul li a#toggle-search.active {}
.header ul li a#toggle-global-menu {}
.header ul li a#toggle-global-menu.active {}

/* ヘッダ：カート */
.header .header-menu_cart {
	-webkit-order: 3;
	order: 3;
}
.header-menu_cart {
	font-size: 8px;
	position: relative;
}
	.header-menu_cart .icon { display: block; width: 20px; height: 20px; margin-bottom: 4px; }
	.header-menu_cart .num {
		background: #ED444E;
		border-radius: 100px;
		color: #FFF;
		font-size: 10px;
		height: 15px;
		line-height: 15px;
		text-align: center;
		width: 15px;
		position: absolute;
		top: -5px;
		right: -5px;
}

/* ---------------------------------
*    ヘッダーユーザーナビ
*/
html.has-menu,
html.has-menu body {
	overflow: hidden;
}
.header-toggle.toggle-global-menu {
	background: rgba(33, 33, 33, .6);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow-y: scroll;
	z-index: 10000;
	padding-right: 20px;
}
.header-toggle.toggle-global-menu .menu-wrap {
	background: #FFF;
}

/*
.header-user-nav ul {
    display: table;
    table-layout: fixed;
    width: 100%;
}

.header-user-nav ul li {
    display: table-cell;
    width: 50%;
}

.header-user-nav ul li.is-login {
    font-size: 11px;
    padding: .5em;
}

.header-user-nav ul li.point {
    text-align: right;
}

.header-user-nav ul li .btn {
    width: 96%;
    margin: 2%;
    padding: 1em 0;
    background-color: #000;
    color: #fff;
}
*/
/* ---------------------------------
*    ヘッダーグローバルナビ
*/

.header-toggle {
    display: none;
}

.header-toggle .button {
	border-bottom: 1px solid #EEE;
	line-height: 1;
}

.header-toggle .button .close {
	display: block;
	font-size: 12px;
	line-height: 24px;
	padding: 10px 15px;
	position: relative;
	text-align: right;
}
.header-toggle .button .close:after {
	content: "×";
	color: #666;
	display: inline-block;
	font-size: 24px;
	margin-left: 5px;
	margin-top: -5px;
	vertical-align: middle;
}



/* ミニカート */

.minicart .inner {
    margin: 1em 0;
}

.minicart .total {
    text-align: center;
    margin-bottom: 1em;
}

.minicart .view-cart .btn {
    width: 80%;
    margin: 0 auto;
    padding: 1em 0;
    background-color: #000;
    color: #fff;
}

.minicart .empty {
    text-align: center;
}

/* =====================================================================
*
*    フッター
*
* =================================================================== */
.block-user {
	background: #0B377C;
	border-radius: 5px;
	margin: 15px 10px;
	padding: 20px;
}
	.block-user .btn {
		background: #FFF;
		border-radius: 100px;
		color: #0B377C;
		display: block;
		font-weight: bold;
		font-size: 14px;
		line-height: 1;
		padding: 1em .25em;
		text-align: center;
	}
	.block-user p + p { margin-top: 10px; }

.footer-wrap {
	background: #EFEDE2;
	padding: 20px 10px;
}

.all-products a {
    background-color: #000;
    color: #fff;
    padding: 1.5em 0;
}
.footer-link {
	font-size: 10px;
	overflow: hidden;
	padding: 20px;
	text-align: left;
}
	.footer-link li { }
		.footer-link li a {}

.footer-map_list {
	background: #FFF;
	border-radius: 5px;
	font-size: 12px;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
	.footer-map_list li {
		line-height: 1.5;
		padding: 15px;
		text-align: center;
		width: 50%;
	}
.footer-map_list li:nth-child(even) { border-left: 1px solid #ECE4D9;}
.footer-map_list li:nth-child(n+3) { border-top: 1px solid #ECE4D9;}
.footer-map_list li:nth-child(1) { border-radius: 5px 0 0 0; }
.footer-map_list li:nth-child(2) { border-radius: 0 5px 0 0; }
.footer-map_list li:nth-child(3) { border-radius: 0 0 0 5px; }
.footer-map_list li:nth-child(4) { border-radius: 0 0 5px 0; }
.footer-map_list li .icon {
	display: block;
	height: 27px;
	width: 27px;
	margin: 0 auto 5px;
}
.footer-navigation_list {
	border-radius: 5px;
	font-size: 12px;
	margin-top: 20px;
	overflow: hidden;
	text-align: left;
}
	.footer-navigation_list li {
		background: #FFF;
}
	.footer-navigation_list li + li {
		margin-top: 1px;
}
		.footer-navigation_list li a {
    display: block;
			padding: 15px 10px;
			position: relative;
		}
		.footer-navigation_list li a:after {
			content: "";
			display: inline-block;
			width: 6px;
			height: 6px;
			border-top: 1px solid #000;
			border-right: 1px solid #000;
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
			margin-top: -3px;
			position: absolute;
			top: 50%;
			right: 10px;
		}
		.footer-navigation_list li .icon {
			display: inline-block;
			height: 17px;
			width: 17px;
			margin-right: 8px;
			vertical-align: middle;
		}
.footer-info {
	font-size: 11px;
	margin-top: 30px;
    text-align: center;
}
	.footer-info_tel {
		font-family: Arial, Helvetica, "sans-serif";
		font-size: 32px;
		font-weight: bold;
	}
		.footer-info_tel img { vertical-align: middle; margin-right: 5px; }

footer .copyright {
	background: #333;
    color: #fff;
	font-size: 9px;
	padding: 16px 0;
	text-align: center;
}

footer .switch-view {
    text-align: center;
    padding: .3em 0;
    color: #fff;
}

footer .switch-view a {
    color: #fff;
    text-decoration: underline;
}


.footer .footer-menu {
	font-size: 10px;
	overflow: hidden;
	padding: 20px;
	text-align: left;
}
.footer .footer-menu ul {}
	.footer .footer-menu ul li {
		display: inline-block;
		padding: 8px 0;
		width: 48%;
	}
		.footer .footer-menu ul li a {}

/* ---------------------------------
*    お問い合わせ
*/

footer {
}

footer .inner {
	overflow: hidden;
}

.contact-form {
    float: left;
    width: 45%;
    background-color: #fff;
}

.contact-form .btn {
    padding: 1.3em 0;
}

.contact-info {
    float: right;
    width: 50%;
    color: #fff;
    font-size: 12px;
}

.contact-info dl dt {
    width: 50px;
    padding: .2em;
    float: left;
    clear: left;
}

.contact-info dl dd {
    padding: .2em;
    margin-left: 60px;
    word-wrap: break-word;
}
.contact-info dl dd a { color: #fff; }

/* Slider */
.slick-slider {position: relative;display: block;box-sizing: border-box;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-touch-callout: none;-khtml-user-select: none;-ms-touch-action: pan-y;touch-action: pan-y;-webkit-tap-highlight-color: transparent;}
.slick-list {position: relative;display: block;overflow: hidden;margin: 0;padding: 0;}
.slick-list:focus{outline: none;}
.slick-list.dragging{cursor: pointer;cursor: hand;}
.slick-slider .slick-track,
.slick-slider .slick-list{-webkit-transform: translate3d(0, 0, 0);-moz-transform: translate3d(0, 0, 0);-ms-transform: translate3d(0, 0, 0);-o-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
.slick-track{position: relative;top: 0;left: 0;display: block;margin-left: auto;margin-right: auto;}
.slick-track:before,
.slick-track:after{display: table;content: '';}
.slick-track:after{clear: both;}
.slick-loading .slick-track{visibility: hidden;}
.slick-slide{display: none;float: left;height: 100%;min-height: 1px;}
[dir='rtl'] .slick-slide{float: right;}
.slick-slide img{display: block;}
.slick-slide.slick-loading img{display: none;}
.slick-slide.dragging img{pointer-events: none;}
.slick-initialized .slick-slide{display: block;}
.slick-loading .slick-slide{visibility: hidden;}
.slick-vertical .slick-slide {display: block;height: auto;border: 1px solid transparent;}
.slick-arrow.slick-hidden {display: none;}

/* --------------------------------------------------
* common styles
--------------------------------------------------*/
#Contents {
	background: #F6F6F6;
	overflow: hidden;
	padding-bottom: 30px;
}
/* link */
a.arrow { position: relative; padding-right: 1em; }
/* btn */
a.btn-default {
	background: #FFF;
	border: 1px solid #0B377C;
	border-radius: 3px;
	color: #0B377C;
	cursor: pointer;
	display: inline-block;
	font-weight: bold;
	line-height: 1;
	padding: 1em 3em;
	position: relative;
  text-align: center;
	text-decoration: none;
	min-width: 5em;
}
a.arrow:after { right: 2px; }
a.arrow:after {
	content: "";
	display: inline-block;
	width: 7px;
	height: 7px;
	border-top: 1px solid #5D4A3C;
	border-right: 1px solid #5D4A3C;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	margin-top: -3.5px;
}
a.btn-blue {
	background: #0B377C;
	border-color: #0B377C;
  color: #fff;
}

/* header user menu */
.header-nav { background: #FFF; }
.header-nav a { display: block; }
	.header-nav .inner { padding: 15px; }
	.header-nav .row {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;	
	}
	.header-nav .row li { width: 50%; }
	.header-nav .row li:nth-child(odd) { padding-right: 5px; }
	.header-nav .row li:nth-child(even) { padding-left: 5px; }
	.header-nav p + ul { margin-top: 1em; }

	.header-nav .btn { display: block; padding: 1em; }
.header-user { background: #EEE; }
	.header-user li { font-size: 13px; padding: 10px; }
	.header-user .name { color: #E8053B; }
	.header-user .point .num { color: #FF8300; font-weight: bold; }

/* global menu */
.nav-global {
	background: #F6F6F6;
	background-size: 50px;
}
.nav-global .icon {
	display: inline-block;
	margin-right: 5px;
	width: 16px;
	height: 16px;
	vertical-align: middle;
}

.nav-global_list > li {
	border-bottom: 1px solid #FFF;
}
.nav-global_list > li > a {
	font-weight: bold;
	padding: 10px;
	display: block;
}
.nav-global .label {
	color: #FF8300;
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 10px;
}
.nav-global_list ul {
	background: #FFF;
	border: 1px solid #ECE4D9;
}
.nav-global_list ul + .label { margin-top: 15px; }
.nav-global_list ul li+li { border-top: 1px solid #ECE4D9; }
.nav-global_list .list-thumb .thumb { width: 50px; text-align: center; }
.nav-global_list .list-thumb .title { padding: 0 12px; }
.nav-global_list .list-thumb .title .catch { font-size: 10px; }
.nav-global_list .list-thumb .title .name { display: inline-block; font-size: 12px; font-weight: bold; margin-top: .5em; }
.nav-global_list .col-2 {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.nav-global_list .col-2 li { width: 50%; }
.nav-global_list .col-2 li:nth-child(2){ border-top: none; }
.nav-global_list .col-2 li:nth-child(even){ border-left: 1px solid #ECE4D9; }
.nav-global_list .col-2 li .thumb { padding: 10px; }
.header-info { background: #EFEDE2; padding: 15px 10px 30px; }
.header-info ul { margin-top: 0; }
/* box */
.box-round {
	background: #FFF;
	border: 1px solid #ECE4D9;
	border-radius: 3px;
	padding: 20px 0;
}
.list-thumb_vertical .thumb {
	display: block;
	margin: 0 auto;
}
.list-thumb_vertical a {
	display: block;
	text-align: center;
}
.list-thumb {}
.list-thumb .item { display: table; }
.list-thumb .item > * { display: table-cell; vertical-align: middle; }

.banner-block { margin: 30px 10px 0; }
.banner-block img { width: 100%; height: auto; }

/* 領収書出力関連　*/
.receipt-download-unit {
  margin-bottom: 2em;
}
.receipt-download-unit h2 {
  padding: .5em;
  background-color: #CCC;
  font-size: 15px;
}
.receipt-download-unit .msg {
  padding: .5em;
  line-height: 1.5;
  text-align: center;
  font-size: 12px;
  color: #ff0000;
}
.receipt-download-unit .button {
  padding: 1em;
}
.receipt-download-unit .button-next .btn {
  padding: 1.5em 0;
  background-color: #000;
  color: #fff;
}