@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 100;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Thin.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Thin.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Thin.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 300;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Regular.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Regular.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Regular.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 700;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Bold.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Bold.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Bold.otf) format('opentype');
}
html, body {
	padding: 0;
	margin: 0;
}

html {
	overflow-y: scroll;
}

body {
	font-size: 62.5% !important;
	/*     font-family: "Helvetica Neue", Helvetica, "Roboto", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
 */
	font-family: 'Noto Sans Japanese', sans-serif;
	font-weight: 300;
	letter-spacing: 0.1em !important;
	/*min-width: 1000px;*/
}

a {
	color: #000000;
	text-decoration: none;
	word-break: break-all;
}

a:hover {
	color: #666;
	text-decoration: underline;
}

figure {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

img {
	max-width: 100%;
}

ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

section {
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width: 768px) {
	section {
		width: 92%;
		padding: 0 4%; 
	} 
}
section.blk {
	display: block;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	section.blk {
		width: 92%;
		padding: 0 4%; 
	} 
}
.inner_box {
	display: block;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.cen {
	text-align: center;
}

#SrelateMTextA {
	font-size: 15px;
	line-height: 35px;
	margin-bottom: 65px;
	text-align: center;
}
@media screen and (max-width: 768px) {
	#SrelateMTextA {
		font-size: 15px;
		line-height: 29px;
		margin-bottom: 65px;
	}
}

.blank_link:after {
	content: "";
	background: url("../img/icon/icon_book_link.png") no-repeat left top;
	background-size: 14px 14px;
	display: inline-block;
	width: 14px;
	height: 14px;
	margin: 3px 0 0 1px;
}

/*flex*/
.flex {
	display: -webkit-box;
    display: -moz-box;
    display: box;
    display: -ms-flexbox;
    display: flex;
    -js-display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: start;
    align-content: flex-start;
}

/*flex two column*/
.two-column > div {
	width: calc(100% / 2 - 2%);		
}
@media screen and (max-width: 768px) {
	.two-column > div {
		width: 100% ;		
	}
}


/* ヘッダー */

header {
	z-index: 900;
	position: relative;
	padding-top: 40px;
}

header h1,
header .header_logo {
	margin: 0;
	padding: 0;
	border-top: 0px solid #ffffff;
}

.j_h1 {
	top: -21px;
}

header .logo {
	text-align: center;
	display: block;
	margin: 0 auto;
}

header .event_btn {
	width: 50%;
	display: inline-block;
	vertical-align: top;
	margin: 0;
}
header .event_btn a {
    font-size: 10px;
    width: 110px;
    line-height: 30px;
    height: auto;
    border: 1px solid #e5e5e1;
    display: block;
    margin: 0;
}
header .ev_button {
    color: #000000;
    font-size: 16px;
    line-height: 2.5;
    background: #ffffff;
    border: 2px solid #e5e5e1;
    width: 235px;
    height: 40px;
    display: inline-block;
    font-weight: bold;
    text-align: center;
}
@media screen and (max-width: 768px) {
	header .logo img {
		margin-top: 5px;
		width: 86%;
	}
	header .event_btn a {
		display: none;
	}
}
header .event_btn a:before {
	display: none;
}

header ul.lang_sel {
	width: 49%;
	display: inline-block;
	text-align: right;
	vertical-align: top;
	margin: 0;
}
header ul.lang_sel li {
	display: inline-block;
	vertical-align: top;
}
header .language {
	position: inherit;
	display: block;
	padding: 10px 2px 8px 13px;
	font-size: 10px;
}
header .language:before {
	display: inline-block;
	content: "";
	vertical-align: middle;
	margin-top: -2px;
	margin-right: 6px;
	background: url("../img/icon/icon_arror_05.jpg") no-repeat center center;
	width: 5px;
	height: 8px;
}


@media screen and (max-width: 768px) {
	header .event_btn a,
	header ul.lang_sel li {
		display: none;
	}
}
header .gnav_close {
	display: none;
}
/* メインメニュー */
header #main_menu_body {
	position: relative;
	width: 100%;
	height: 61px;
}
@media screen and (min-width: 769px) {
	header .gnav_menu {
		text-align: center;
		background: #ffffff;
		border-bottom: 4px solid #000000;
		top: 0;
		left: 0;
		right: 0;
	}
	header .gnav_menu .inner_gnav_menu {
		display: block;
		width: 1015px;
		white-space: nowrap;
		position: relative;
		vertical-align: bottom;
		margin: 0 auto;
	}
	header .gnav_menu .inner_gnav_menu .hide_pc {
		display: none;
	}
	header .main_menu,
	header .share_menu {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	header .main_menu li,
	header .share_menu li {
		/*display: table-cell;*/
		white-space: nowrap;
		vertical-align: middle;
		position: relative;
		padding-left: 0;
	}
	header .main_menu .sub_menu ul li:first-child {
		margin-top: 20px;
	}
/*
	header .main_menu .sub_menu ul li:last-child {
		margin-bottom: 17px;
	}
*/
}
header .main_menu li a,
header .share_menu li a {
	display: inline-block;
	height: 58px;
	line-height: 64px;
	margin-right: 0px;
	padding: 0 14px;
	color: #000000;
	font-size: 14px;
	font-weight: 300;
	text-align: center;
	letter-spacing: initial;
	position: relative;
}
header .share_menu li a {
	display: inline;
	margin-right: 10px;
}
header .main_menu li a:hover,
header .share_menu li a:hover {
	text-decoration: none;
	font-weight: bold;
}
header .share_menu li img {
	width: auto;
	height: auto;
	max-width: 20px;
	max-height: 20px;
}
header .main_menu li.menu_search a {
	padding-top: 20px;
	box-sizing: border-box;
}
/* メニューバーでは表示しない項目 */
header .main_menu .disp_dialog {
	display: none;
}
.sp_sns_menu {
	display: none!important;
}
/* 下のバー */
header .main_menu li:hover a:before {
	content: "";
	width: 100%;
	height: 0;
	border-bottom: 2px solid transparent;
	border-bottom-color: #000000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0px;
	margin: auto;
}
/* サブメニュー */
@media screen and (min-width: 769px) {
	header .main_menu .sub_menu ul {
		overflow: hidden;
		height: 0;
		transition: 0.2s;
	}
	header .main_menu .sub_menu > ul {
		position: absolute;
		z-index: 9999;
		top: 100%;
		left: 0;
		margin: 0;
		padding: 0px 0px;
		background: rgba(0, 0, 0, 0.9);
		width: 100%;
		box-sizing: border-box;
	}
	header .main_menu .sub_menu ul li {
		display: block;
		padding-left: 0px;
	}
	header .main_menu .sub_menu li.sub_menu_list,
	header .main_menu .sub_menu li a {
		height: 22px;
		line-height: 22px;
		padding: 5 12px;
		margin: 6px;
		color: #ffffff;
		font-size: 12px;
		font-weight: normal;
		text-align: left;
		position: relative;
		display: block;
	}
	header .main_menu .sub_menu li.sub_menu_list > a {
		padding: 0;
		margin: 0;
	}
	header .main_menu .sub_menu li.sub_menu_list {
		height: auto;
	}
	header .main_menu .sub_menu li.sub_menu_list li {
		margin-bottom: 0;
	}
	header .main_menu .sub_menu li.sub_menu_list ul li:last-child a {
		padding-bottom: 0;
		margin-bottom: 0;
	}
}
header .main_menu .sub_menu:hover > ul {
	padding: 10px 0;
}
header .main_menu .sub_menu:hover ul,
header .main_menu .sub_menu:hover:before {
	height: auto;
	width: auto;
	min-width: 100%;
}
header .main_menu .menu_search:hover ul,
header .main_menu .menu_search:hover:before {
	height: 64px;
}
header .main_menu .sub_menu ul a:hover {
	color: #595959;
}
header .main_menu li.sub_menu li a:before {
	border-bottom: 0px solid #000000;
}
/* 選択中のページ */
header .main_menu .current_menu .sub_menu ul,
header .main_menu .current_menu:before {
	/*height: 44px;
	z-index: 9000;*/
}
header .main_menu .current_menu a {
	font-weight: bold!important;
}
header .main_menu .current_menu a:before {
	content: "";
	width: 100%;
	height: 0;
	border-bottom: 2px solid transparent;
	border-bottom-color: #000000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0px;
	margin: auto;
}
header .main_menu .sub_menu ul .current_sub_menu a {
	background: #333333
}

header .main_menu li span {
    display: block;
    height: 58px;
    line-height: 64px;
    margin-right: 0px;
    color: #000000;
    font-size: 14px;
    font-weight: 300;
    text-align: center;
    letter-spacing: initial;
    position: relative;
	cursor: pointer;
}

header .main_menu li span:hover {
	text-decoration: none;
	font-weight: bold;
}

header .main_menu li:hover span:before {
	content: "";
	width: 100%;
	height: 0;
	border-bottom: 2px solid transparent;
	border-bottom-color: #000000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0px;
	margin: auto;
}


/* 検索ボタン*/
header .main_menu li.menu_search {
	cursor: pointer;
	position: absolute;
	right: 36px;
	bottom: 12px;
	padding-top: 4px;
	width: 30px;
}
#head_search_form {
	margin: 0px;
}
#head_search_box {
	display: none;
	width: 100%;
	height: 64px;
	background: rgba(0, 0, 0, 0.9);
	font-size: 0.9rem;
	color: #ffffff;
	box-sizing: border-box;
	position: fixed;
	text-align: left;
}
#head_search_box .inner {
	max-width: 980px;
	height: 46px;
	padding: 9px 0;
	margin: 0 auto;
}
#head_search_box input:focus {
	outline: 0px #ff0000 dashed;
}
#head_search_box span {
	padding-right: 30px;
}
#head_search_box input {
	font-size: 1.0rem;
	background: transparent;
	border: 0px solid #333333;
	padding: 12px;
	float: left;
	width: 888px;
	height: 46px;
	line-height: 46px;
	opacity: 0.85;	
	background-color: #FFFFFF;
}
#head_search_box input:-webkit-autofill {
	-webkit-transition: background-color 9999s;
	transition: background-color 9999s;
}
#head_search_box #head_search_close {
	float: left;
	cursor: pointer;
	margin: 0;
	font-size: x-large;
	height: 46px;	
	width: 46px;
	background: #dadada;
}
#head_search_box #head_search_close img {
	margin: 14px 0 0 14px;
	width: 18px;
	height: 18px;
}
#head_search_box .search_button {
	float: left;
	cursor: pointer;
	margin: 0;
	font-size: x-large;
	height: 46px;	
	width: 46px;	
	background-color: #C0C0C0;
	background: url("../img/icon/search_p.png"),#C0C0C0;
	background-repeat: no-repeat;
	background-size: 22px;
	background-position: center;
}
header.minhead {
	padding-top: 0px;
}
@media screen and (max-width: 768px) {
	header .share_menu,
	header .menu_mail_magazine {
		display: none;
	}
	header .logo {
		margin: 0px auto 1px auto;
	}
	/* メニューボタン */
	header .gnav_menu_bt {
		width: 100%;
		height: 40px;
		position: relative;
	}
	header .gnav_menu_bt .bt_menu {
		width: 100%;
		height: 40px;
		line-height: 40px;
		background: #000000 url("../img/sp_menu.png") no-repeat center;
		background-size: 76px 16px;
		position: absolute;
		top: 0;
		z-index: 1000000;
		border-right: 1px solid #3e3e3e;
		box-sizing: border-box;
	}
	header .gnav_menu_bt .bt_onlineshop {
		width: 50%;
		height: 40px;
		line-height: 40px;
		background: #000000 url("../img/sp_onlineshop.png") no-repeat center;
		background-size: 117px 13px;
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 1000000;
	}
	/* メニューエリア */
	header #main_menu_body,
	header #main_menu_body_online {
		visibility: hidden;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		position: fixed;
		width: 100%;
		height: 100%;
		padding-top: 40px;
		padding-bottom: 100px;
		top: -40px;
		overflow-y: scroll;
		z-index: 100000;
		background: transparent;
	}
	header .gnav_search {
		padding: 5%;
		border-bottom: 1px solid #e5e5e1;
	}
	header .gnav_search_box {
		width: 100%;
		position: relative;
	}
	header .gnav_search .gnav_search_box input {
		width: 100%;
		font-size: 16px;
		height: 33px;
		border: 1px solid #e5e5e1;
		border-radius: 0;
		-webkit-appearance: none;
	}
	header .gnav_search .gnav_search_box a {
		display: inline-block;
		position: absolute;
		top: 6px;
		right: 13px;
		height: 100%;
		width: 30px;
		background: url("../img/icon/lens.png") no-repeat right top;
		background-size: 20px 20px;
	}
	header ul.main_menu,
	header ul.translate_menu {
		background: rgba(0, 0, 0, 0.9);
	}
	header ul.main_menu li,
	header ul.translate_menu li {
		width: 100%;
		line-height: 1.572;
		border-bottom: 0px solid #e5e5e1;
		margin: 0;
		padding: 0;
		position: relative;
	}
	header ul.main_menu li a {
		color: #ffffff;
	}
	header ul.main_menu li a,
	header ul.translate_menu li a,
	header ul.main_menu li span
	{
		padding: 15px;
		font-size: 14px;
		display: block;
		font-weight: 300;
		letter-spacing: 0px;
		color: #fff;
/*		background: rgba(0, 0, 0, 0.9);*/
		height: auto;
		line-height: normal;
		text-align: left;
		width: auto;
	}
	header ul.main_menu .sub_menu ul,
	header ul.translate_menu .sub_menu ul {
		list-style-type: none;
		margin: 0;
		padding: 0;
/*		background: rgba(21, 21, 21, 0.95);*/
	}
	header ul.main_menu .sub_menu ul li,
	header ul.translate_menu .sub_menu ul li {
		width: 100%;
		border-bottom: 0px solid #ffffff;
	}
	header ul.main_menu .sub_menu ul li a,
	header ul.translate_menu .sub_menu ul li a {
		padding: 9px 16px 9px 30px;
		font-weight: normal;
		letter-spacing: 0.1em;
		background: transparent;
	}
	header .main_menu .sub_menu li.sub_menu_list > ul > li > a {
		padding-left: 50px;
	}
	.menu_search {
		display: none;
	}
	#head_search_form {
		display: none;
	}
	/**SNS menu*/
	ul.main_menu li.sp_sns_menu {
		display: flex!important;
		justify-content: center;
/*		background: rgba(0, 0, 0, 0.9);*/
	}
	ul.main_menu li.sp_sns_menu a {
		background: transparent!important;
	}
	/* CLOSEボタン */
	header .gnav_close {
		width: 100%;
		display: block;
		text-align: center;
		/* height: 40px;
		line-height: 40px;
		background: rgba(0, 0, 0, 0.9);*/
	}
	header ul.main_menu li .gnav_close a {
		font-size: 15px;
		font-weight: bold;
		/*background: url('../img/icon/icon_close.gif') no-repeat left center;*/
		background-size: 10px 10px;
		padding-left: 0px;
		color: #ffffff;
		text-align: center;
	}
}
/*PCヘッダー*/
header.hide_sp {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 900000;
  width: 100%;
  transition: all ease .4s;
  background: #fff;;
  padding-top: 0;
}
header.hide_sp .inner_box {
	padding-top: 10px;
	background: #fff;
	height: 33px;
  transition: all ease .4s;
}
header.hide_sp h1 {
  color: #fff;
  background: #fff;
  transition: all ease .4s;
}
header.hide_sp .logo {
  transition: all ease .4s;
}
header.hide_sp.is-animation {
  transition: all ease .4s;
}
header.hide_sp.is-animation .inner_box {
  transition: all ease .4s;
	height: 0;
}
header.hide_sp.is-animation .logo {
  width: 300px;
  transition: all ease .4s;
}
@media screen and (min-width: 1600px) {
	header.hide_sp.is-animation .logo {
		  width: 320px;
	}
}
header.hide_sp.is-animation .logo.logo_l {
	width: 250px;
}
header.hide_sp #main_menu_body {
	height: 62px;
  transition: all ease .4s;
}
header.hide_sp.is-animation #main_menu_body {
	height: 48px;
  transition: all ease .4s;
}
header.hide_sp.is-animation .main_menu li a {
/*
	height: 44px;
	line-height: 40px;
*/
  transition: all ease .4s;
}
/*
header.hide_sp .main_menu .sub_menu li a {
	height: 22px;
}
*/
header.hide_sp .main_menu .sub_menu ul li:first-child {
	margin-top: 0;
}
header.hide_sp.is-animation .main_menu > li > span {
/*
	height: 44px;
	line-height: 44px;
*/
  transition: all ease .4s;
}
/* header.hide_sp.is-animation .main_menu > li > ul li a,
header.hide_sp.is-animation .main_menu > li > ul li span {
	height: 20px;
	line-height: 20px;	
} */
header .main_menu .sub_menu ul li.menu_news a {
	height: 40px;
    line-height: 40px;
    padding: 0;
    margin: 0 20px;
}
header .main_menu .sub_menu li.sub_menu_list li.menu_shop_list > a {
	padding: 10px 20px;
	margin: 0;
	height: 20px;
	line-height: 20px;
} 

        
/*SPヘッダー*/
header.hide_pc {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 900000;
  width: 100%;
  transition: .4s;
  background: #fff;
}

@media screen and (max-width:768px) {
	main.sp_display {
		padding-top: 178px;
	}
	.main_menu_body,
	.main_menu_body_online {
		position: fixed;
	}
	ul.main_menu li.menu_language {
		display: inline-block;
		box-sizing: border-box;
		border-top: 1px solid #3e3e3e;
		border-bottom: 1px solid #3e3e3e;
		float: left;
		width: 50%;
	}
	ul.main_menu li.menu_english {
		border-right: 1px solid #3e3e3e;
		box-sizing: border-box;
	}
	ul.main_menu li.menu_language a {
		text-align: center;
		font-weight: 700;
		letter-spacing: 2px;
	}
	ul.main_menu li.sp_sns_menu {
		padding-top: 10px;
	}
	header .main_menu .sub_menu li.sub_menu_list li.menu_shop_list > a {
		padding: 10px 50px;
	}
}


h1,
h2 {
	color: #000000;
	text-align: center;
	font-size: 2.8em;
	font-weight: bold;
	border-top: 2px solid #000000;
	margin-bottom: 0; 
}
h1 span,
h2 span {
	background-color: #ffffff;
	padding: 0 20px;
	position: relative;
	top: -23px; 
}
@media screen and (max-width: 768px) {
	h1,
	h2 {
		margin-top: 70px; 
	} 
	h1 span,
	h2 span {
		top: -18px;
		font-size: 24px;
	}
}
@media screen and (min-width: 769px) {
    h1,
    h2 {
		margin-top: 110px; 
	} 
}

.cf:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden; 
}

.sub_title_bar {
	position: relative;
    text-align: center;
    font-weight: normal;
    border-top: none;
    display: block;
    margin-bottom: 45px;
    margin-top: -15px;
    padding-bottom: 0;
    width: auto!important;
    font-size: 14px;
}
@media screen and (max-width: 768px) {
	.sub_title_bar {
		margin-bottom: 20px; 
		margin-top: -18px;
		padding-bottom: 0px;
		width: auto!important;
		font-size: 14px;
	} 
}
.full_sec .sub_title_bar {
    margin-top: 0;
}

.new {
	position: absolute;
	top: 0;
	right: 0; 
}

.thumb {
	display: inline-block;
	background: no-repeat center center;
	-webkit-background-size: cover;
	background-size: cover;
	overflow: hidden;
	width: 100%;
	height: auto; 
}

.button_more {
	color: #000000;
	font-size: 16px;
	line-height: 2.5;
	background: #ffffff;
	border: 2px solid #e5e5e1;
	width: 280px;
	height: 40px;
	display: block;
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.button_more {
		width: 100%; 
	} 
}
.button_more:before {
	background: url(../img/icon/icon_arrow_bl_r.png) no-repeat left center;
	content: "";
	width: 7px;
	height: 14px;
	padding-right: 15px;
	display: inline-block; 
}
.hide_pc {
	display: none; 
}
.hide_sp {
	display: block; 
} 
.hide_pc_inline {
	display: none !important; 
}
.hide_sp_inline {
	display: inline !important; 
} 
@media screen and (max-width: 768px) {
	.hide_pc {
		display: block; 
	}
	.hide_sp {
		display: none; 
	}
	.hide_pc_inline {
		display: inline !important; 
	}
	.hide_sp_inline {
		display: none !important; 
	} 
}

.mt20 {
	margin-top: 20px; 
}

.mb20 {
	margin-bottom: 20px; 
}

.mt30 {
	margin-top: 30px;
}

.mb40 {
	margin-bottom: 40px; 
}


@media screen and (max-width: 768px) {
	.sns_btns_inner {
		display: flex; 
	}
	.sns_btns_inner .tw {
		margin-right: 10px;
	}
	.sns_btns_inner .fb {
		width: 150px;
	}
}

/* スライダー */
.slider {
	position: relative;
}
@media screen and (max-width: 768px) {
	section.slider {
		width: 100%;
		padding: 0; 
	} 
}
.main-slider {
	display: inline-block;
	width: 100%;
	max-width: 1000px; 
}
@media screen and (min-width: 769px) {
	.main-slider {
		height: 500px; 
	} 
}
.main-slider img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto; 
}

.slider_left {
	position: absolute;
	width: 2000px;
	height: 500px;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1;
	right: 1000px;
}

.slider_right {
	position: absolute;
	width: 2000px;
	height: 500px;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1;
	left: 1000px;
}

.slick-prev,
.slick-next {
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	top: 250px;
	z-index: 1;
	border: 16px solid transparent;
	border-right-color: #fff;
	/* box-shadow: 1px 1px 1px #858685; */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.slick-prev {
	left: -80px;
}

.slick-next {
	right: -80px;
	border-left-color: #fff;
	border-right-color: transparent;
}

.slick-prev:before,
.slick-next:before {
	display: none;
}
.slick-dots {
	background: none!important;
}

.slick-list {
	overflow: visible;
}
/*.slick-list {
	overflow: hidden;
}*/
.slick-slide {
	height: auto;
	position: relative;
	min-height: 500px; 
}
@media screen and (max-width: 768px) {
	.slider_left,
	.slider_right {
		display: none;
	}
	.slick-prev {
		left: -10px;
	}
	.slick-next {
		right: -10px;
		border-left-color: #fff;
		border-right-color: transparent;
	}
	.slick-prev,
	.slick-next {
		top: calc(100vw/2);
	}
	.slick-slide {
		min-height: 100vw; 
	} 
}
.slide_one {
	height: auto;
	position: relative;
	min-height: 500px; 
}
@media screen and (max-width: 768px) {
	.slide_one {
		min-height: 100%!important;
	}
}

#slider_wrap {
	overflow: hidden;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	#slider_wrap section.blk {
		width: 100%;
		padding: 0;
	}
}
.def_marginm h1 {
	margin-top: 67px!important
}
.top_view {
	margin-top: 66px;
}

/* info */
.info .shop_name {
	font-size: 12px;
	color: #fff;
	background: #93928b;
	padding: 0 5px;
	height: 24px;
	line-height: 24px;
	display: inline-block;
  width: fit-content;
  margin: 10px 0;
}

.grid_2 .info .shop_name {
	margin: 0 0 8px;
}

.grid_2 ul {
	margin-right: -15px;
	text-align: left; 
}
@media screen and (max-width: 768px) {
	.grid_2 ul {
		margin-right: 0px; 
	} 
}
.grid_2 ul li {
	display: inline-block;
	width: 485px;
	margin-right: 20px;
	margin-bottom: 20px;
	text-align: left;
	vertical-align: top; 
}
@media screen and (max-width: 768px) {
	.grid_2 ul li {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px; 
	} 
}
.grid_2 ul li a {
	display: table;
	background: #e5e5e1;
	width: 100%;
	height: auto; 
}
.grid_2 ul li .thumbnail {
	display: table-cell;
	width: 130px;
	overflow: hidden;
	position: relative; 
}
@media screen and (max-width: 768px) {
	.grid_2 ul li .thumbnail {
		width: 34.48%; 
	} 
}
.grid_2 ul li .info {
	display: table-cell;
	vertical-align: middle;
	padding: 8px 20px; 
}
.grid_2 ul li .date {
	font-size: 1.3em; 
}
.grid_2 ul li .title {
	font-size: 1.3em;
	font-weight: bold;
}

.grid_4 ul {
	margin-right: -20px;
	text-align: left; 
}
.grid_4 ul li {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 20px;
	text-align: left;
	vertical-align: top; 
}

/* Top information */
.grid_2 ul li .top_title {
	display: -webkit-box;
  -webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

@media screen and (max-width: 768px) {
	.grid_4 ul li {
		width: 45%;
		margin-bottom: 20px;
		margin-right: 13px; 
	} 
	.grid_2 ul li .info {
		padding: 8px 16px; 
	}
}
@media screen and (min-width: 769px) {
	.grid_4 ul li {
		width: 232px; 
	} 
}
.grid_4 ul li .thumbnail {
	position: relative; 
}
.grid_4 ul li .genre {
	background: #93928b;
	padding: 0 5px;
	display: inline-block;
	color: #ffffff;
	font-size: 1.2em;
	line-height: 2;
	margin: 10px 0; 
}
.grid_4 ul li .date {
	font-size: 1.3em;
	margin-bottom: 10px;
}
.grid_4 ul li .title {
	width: 100%;
	font-weight: 300;
	font-size: 1.3em; 
}
.grid_4 ul ol {
	display: inline;
	margin: 0px;
	padding: 0;
}
.grid_4 ul.other_store {
	margin-right: -40px;
	margin-bottom: 40px; 
}
.grid_4 ul.other_store li {
	text-align: center;
	padding-left: 0;
	margin-right: 37px;
	width: 220px;
	margin-bottom: 17px; 
}
.grid_4 ul.other_store li .thumbnail {
	margin-bottom: 15px; 
}
.grid_4 ul.other_store li .title {
	margin-bottom: 0px; 
}
.grid_4 ul.shop_thumb {
	text-align: left; 
}
.grid_4 ul.shop_thumb li .title {
	font-size: 1.1rem;
	position: relative;
	box-sizing: border-box; 
}
.grid_4 ul.shop_thumb li p {
	font-size: small; 
}
@media screen and (max-width: 768px) {
	.grid_4 ul {
		margin-right: -10px;
		display: table;
		border-collapse: collapse;
		width: 100%; 
	}
	.grid_4 ul.other_store {
		margin-right: 0px;
		margin-bottom: 0px;
		width: 100%; 
	}
	.grid_4 ul.other_store li {
		padding: 10px 10px;
		border-right: 0px solid #e9e9e9;
		border-bottom: 1px solid #e9e9e9;
		display: block;
		width: 100%;
		vertical-align: middle;
		position: relative;
		margin-bottom: 0px;
		height: 42px;
		box-sizing: border-box; 
	}
	.grid_4 ul.other_store li .thumbnail {
		display: none; 
	}
	.grid_4 ul.other_store li .title {
		text-align: left !important;
		width: 95%;
		font-weight: normal; 
	}
	.grid_4 ul.other_store li .title:after {
		content: "";
		width: 0;
		height: 0;
		line-height: 0;
		font-size: 0;
		border-style: dashed dashed dashed solid;
		border-color: transparent transparent transparent #a7a79d;
		border-width: 10px;
		float: right;
		margin-top: -9px;
		position: absolute;
		right: 0px;
		top: 50%; 
	}
	.grid_4 ul.other_store li:nth-child(even) {
		border-right: 0px solid #e9e9e9; }
	.grid_4 ul.other_store li:first-child {
		border-top: 1px solid #e9e9e9; 
	}
	.grid_4 ul.other_store li:last-child {
		border-bottom: 0px solid #e9e9e9;
		margin-bottom: 0px; 
	}
	.grid_4 ul.other_store ol {
		display: table-row; 
	} 
}

.grid_3 ul {
	margin-right: -40px;
	text-align: left; 
}
.grid_3 ul li {
	display: inline-block;
	margin-right: 25px;
	margin-bottom: 20px;
	text-align: left;
	vertical-align: top;
	box-sizing: border-box; 
}
@media screen and (max-width: 768px) {
	.grid_3 ul li {
		width: 45%;
		margin-bottom: 20px;
		margin-right: 15px; 
	} 
}
@media screen and (min-width: 769px) {
	.grid_3 ul li {
		width: 314px;
		padding: 10px 32px; 
	}
}
.grid_3 ul li .thumbnail {
	position: relative; 
}
.grid_3 ul li .genre {
	background: #93928b;
	padding: 0 5px;
	display: inline-block;
	color: #ffffff;
	font-size: 1.2em;
	line-height: 2;
	margin: 10px 0; 
}
.grid_3 ul li .date {
	font-size: 1.3em;
	margin-bottom: 10px; 
}
.grid_3 ul li .title {
	width: 100%;
	font-weight: bold;
	font-size: 1.3em; 
}
.grid_3 ul.shop_thumb {
	text-align: left; 
}
.grid_3 ul.shop_thumb li .title {
	font-size: 1.1rem;
	position: relative;
	box-sizing: border-box; 
}
.grid_3 ul.shop_thumb li p {
	font-size: small; 
}
@media screen and (max-width: 768px) {
	.grid_3 ul {
		margin-right: -10px; 
	}
	.grid_3 ul.shop_thumb {
		text-align: left;
		margin-right: 0px; 
	}
	.grid_3 ul.shop_thumb li {
		width: 100%;
		margin: 0 auto; 
	}
	.grid_3 ul.shop_thumb li .title {
		font-size: 1.1rem;
		position: relative;
		box-sizing: border-box; 
	}
	.grid_3 ul.shop_thumb li p {
		font-size: small; 
	} 
}

.grid_6 {
	text-align: left;
	font-size: 1.3em; 
}
.grid_6 li {
	display: inline-block;
	width: 312px;
	margin-right: 15px;
	margin-bottom: 45px;
	text-align: left;
	vertical-align: top; 
}
@media screen and (max-width: 768px) {
	.grid_6 li {
		width: 100%;
		margin-bottom: 20px; 
	} 
}
.grid_6 li .title {
	display: block;
	font-weight: bold;
	font-size: 1.4em;
	background: #dcdddd;
	text-align: center;
	padding: 8px;
	margin: 0 0 8px; 
}
.grid_6 .button_app {
	text-align: center; 
}
.grid_6 .button_app a {
	margin: 0 15px; 
}

@media screen and (max-width: 768px) {
	.spflex_col2 {
		display: flex!important;
		flex-wrap: wrap!important;
		justify-content: space-between!important;
	}
	.spflex_col2 li {
		width: 47%!important;
		margin-right: 0px!important;
	}
	.spflex_col2 li .title {
		font-weight: bold;
	}
}

/* カレンダー */
.search_calendar {
	cursor: pointer; 
}
@media screen and (max-width: 768px) {
	.search_calendar {
		padding-bottom: 3px;
		margin-top: 16px;
		display: block;
		border: 2px solid #e5e5e1;
		text-decoration: none;
		font-weight: bold;
		line-height: 2.57143; 

	}
	.search_calendar:before {
		content: "";
		background: url(../img/icon/icon_calendar.png) no-repeat right center;
		background-size: 20px;
		display: inline-block;
		width: 20px;
		height: 20px;
		margin-top: 0px;
		margin-right: 6px;
		vertical-align: middle;
		margin-bottom: 5px; 
	} 
}
@media screen and (min-width: 769px) {
	.search_calendar {
		position: absolute;
		top: 0;
		right: 0;
		text-decoration: underline; 
	}
	.search_calendar:after {
		content: "";
		background: url(../img/icon/icon_calendar.png) no-repeat right center;
		background-size: 20px;
		display: inline-block;
		width: 20px;
		height: 20px;
		margin-left: 5px;
		vertical-align: text-bottom; 
	} 
}

/* NEWS・INFORMATION・EVENT*/
.news_txt_link {
	margin: 10px 0 0;
}
.news_txt_link a {
	text-decoration: underline;
	font-size: 14px;
}

/* ラベル */
.thumbnail .new_label,
.thumbnail .end_label {
	position: absolute;
    top: 0;
    left: 0;
	background: #c4002e;
	width: 50px;
	height: 20px;
	line-height: 22px;
	color: #fff;
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2px;
	font-family: 'Muli', sans-serif;
}
.thumbnail .new_label {
	background: #c4002e;
	padding-left: 3px;
}
.thumbnail .end_label {
	background-color: rgba(0, 0, 0, 0.5);
	font-size: 10px;
	width: 53px;
}

/* ページナビ*/
.list_page {
	text-align: center;
	vertical-align: middle;
	margin-top: 60px; 
}
.list_page .prev_page,
.list_page .next_page {
	display: inline-block;
	vertical-align: middle;
	font-size: 1;
	cursor: pointer;
	width: 16px;
	height: 16px;
	color: transparent;
	background: #000000;
	margin: 0;
	position: relative; 
}
.list_page .prev_page:after,
.list_page .next_page:after {
	content: "";
	width: 0;
	height: 0;
	border: 4px solid transparent;
	position: absolute;
	top: 4px; 
}
.list_page .prev_page:after {
	left: 2px;
	border-right: 4px solid #ffffff; 
}
.list_page .next_page:after {
	right: 2px;
	border-left: 4px solid #ffffff; 
}
.list_page .inactive {
	cursor: not-allowed;
	background-color: #797979;
}
.list_page .num_list {
	display: inline-block;
	height: 16px;
	line-height: 16px;
	vertical-align: middle; 
}
.list_page .num_list .page_num {
	display: inline-block;
	cursor: pointer;
	color: #797979;
	font-size: 14px;
	font-weight: bold;
	border-right: 1px solid #e5e5e1;
	width: 58px; 
}
.list_page .num_list .page_num:last-child {
	border-right: none; 
}
.list_page .num_list .page_num:hover {
	color: #000000;
	text-decoration: none; 
}
.list_page .num_list .page_num.current_page {
	color: #000000;
	cursor: default; 
}
@media screen and (max-width: 768px) {
	.list_page .num_list {
		margin-top: 0; 
	}
	.list_page .num_list .page_num {
		width: 46px;
	}
}
@media screen and (max-width: 320px) {
	.list_page .num_list .page_num {
		width: 40px;
	}
}


/* shoplist */
.other_store_sec .grid_4 a {
	display: block;
}
.other_store_sec .grid_4 span {
	display: block;
	padding: 14px 0 0;
	font-size: 14px;
	text-align: center;
}
.other_store_sec .grid_4 ul li img {
	display: block;
	width: 100%;
}
.other_store_sec .sub_title_bar {
	margin-bottom: 45px;
}


 @media screen and (max-width: 768px) {
	    .other_store_sec {
            width: 100%!important;
            padding: 0px!important;
            margin-bottom: 0px;
        }
        .other_store_sec h2 {
            margin-top: 30px;
            margin-left: 20px;
            margin-right: 20px;
        }
        .other_store_sec .sub_title_bar {
            margin-bottom: 23px;
			text-align: center;
			font-weight: normal;
        }

	.other_store_sec .grid_4 ul li {
		padding: 10px 10px;
		border-right: 0px solid #e9e9e9;
		border-bottom: 1px solid #e9e9e9;
		display: block;
		width: 100%;
		vertical-align: middle;
		position: relative;
		margin-bottom: 0px;
		min-height: 42px;
		box-sizing: border-box;
	}
	.other_store_sec .grid_4 ul li:first-child {
		border-top: 1px solid #e9e9e9;
	}
	.other_store_sec .grid_4 ul li:after {
		content: "";
		width: 0;
		height: 0;
		line-height: 0;
		font-size: 0;
		border-style: dashed dashed dashed solid;
		border-color: transparent transparent transparent #a7a79d;
		border-width: 10px;
		float: right;
		margin-top: -9px;
		position: absolute;
		right: 0px;
		top: 50%;
	}
	.other_store_sec .grid_4 ul li img {
		display: none;
	}
	.other_store_sec .grid_4 span {
		display: block;
		padding: 0;
		font-size: 14px;
		text-align: left;
	}
}

.linkbtn {
	background: url("../img/icon/btn_icon_arrow_l_wh.png") no-repeat 0 3px;
	padding-left: 26px;
	font-size: 15px;
	font-size: 1.0rem;
	display: inline-block;
}

.gray_num {
	box-sizing: border-box;
	display: inline-block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 26px;
	height: 26px;
	padding: 0px;
	margin-right: 8px;
	border-radius: 13px;
	-webkit-border-radius: 13px;
	-moz-border-radius: 13px;
	background-color: #898989;
	color: #FFF;
	text-align: center;
}

.center_txt-s {
	font-size: small;
}

.cont_wrapper_ag {
	max-width: 760px;
	margin: 0 auto;
	margin-top: 75px;
}
.cont_wrapper_ag p {
	font-size: 0.9rem;
	text-align: left;
	line-height: 1.8rem;
}

/* event */
ul.eventlist li .title {
	font-weight: bold;
}

.ttl_h3 {
	font-size: 1.2rem;
	text-align: left;
}

.full_box {
	width: 100%;
	max-width: 100%;
	padding: 60px 0;
	margin-top: 60px;
	background-color: #f7f7f7;
}
@media screen and (max-width: 768px){
	.full_box {
		padding: 60px 0 20px;
	}
}

.full_box .blk {
	display: block;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
@media screen and (max-width: 768px){
	.full_box .blk {
		width: 92%;
		padding: 0 4%;
	}
}

.full_box h1 {
	border: 0;
	margin: 0;
}

.full_box h1 span {
	background-color: transparent;
	top: 0;
}

.full_box .blk > .sub_title_bar {
	margin-top: 0;
}

.event_category_scroll {
	margin-top: -20px;
	margin-bottom: 20px;
}
.event_category_scroll ul {
	overflow: auto;
	width: 100%;
	margin: 0 auto;
	display: flex;
}
.event_category_scroll ul li {
	font-size: 14px;
	padding: 0 5px;
	border-right: 0px solid #cccccc;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.event_category_scroll ul {
		width: 100%;
	}
}

.list_info .sort .item {
	background-color: #f6f6f3!important;
	margin-left: -3px;
}
.list_info .sort .item.active {
	background-color: #e5e5e1!important;
}

ul.eventlist {
	margin-bottom: 25px;
}
@media screen and (max-width: 768px) {
	ul.bloglist li {
		width: 100%!important;
	}
	ul.bloglist li .info {
		padding-right: 20px;
		box-sizing: border-box;
	}
}

/**OnlineSHOP*/
.l_inbox ul .goods_box {
	padding: 0;
	margin: 0 20px 40px 0;
	display: inline-block;
	text-align: left;
	vertical-align: top;
}
.l_inbox ul .goods_box .name {
	height: 36px;
	display: block;
	overflow: hidden;
	font-size: 12px;
	margin: 10px 0;
	line-height: 18px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.price {
	color: #333;
	font-size: 12px;
}

/*Ranking**/
.ranking .l_inbox .goods_box {
	position: relative;
}
.l_inbox ul .goods_box {
	padding: 0;
	margin: 0 20px 40px 0;
	display: inline-block;
	text-align: left;
	vertical-align: top;
}
.five_col .goods_box {
	width: 177px;
}
.ranking .l_inbox .goods_box .r_odr {
	margin: 0;
	background: #111;
	color: #fff;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border-radius: 50%;
	text-align: center;
	position: absolute;
	top: 4px;
	left: 4px;
}
.ranking .l_inbox .goods_box .r_mark_same,
.ranking .l_inbox .goods_box .r_mark_up,
.ranking .l_inbox .goods_box .r_mark_down,
.ranking .l_inbox .goods_box .r_last {
	display: none;
}

.full_sec {
	background: #f7f7f7;
	padding: 1px 0;
	margin-top: 110px;
	padding-bottom: 60px;
}
.full_sec h1,
.full_sec h2 {
	margin-top: 70px;
	border-top: 0px solid #000000;
}
.full_sec h1 span,
.full_sec h2 span {
	background: transparent;
	top: 0;
	padding: 0;
}

.feature div {
	margin-bottom: 30px;
	display: inline-block;
	text-align: left;
	width: 100%;
}
.feature div img {
	width: 500px;
	float: left;
	margin-right: 30px;
}
@media screen and (max-width: 768px) {
	.feature div img {
		margin-right: 0;
	}
}
.feature div h3 {
	border: none;
	text-align: left;
	font-size: 18px;
	font-weight: 700;
	height: auto;
	margin: 20px 0 20px;
	line-height: 26px;
	letter-spacing: initial;
}
.feature div span {
	line-height: 28px;
	text-align: left;
	font-size: 14px;
}
.feature a:hover {
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	.goods_list_h h2 {
		margin-top: 30px;
	}
	.feature div {
		margin-bottom: 10px;
	}
	.feature div.sub_title_bar {
		text-align: center;
		margin-bottom: 40px;
	}
	.feature div img {
		float: none;
	}
	.feature div h3 {
		margin: 30px 20px 20px;
		box-sizing: border-box;
	}
	.feature div span {
		box-sizing: border-box;
		display: block;
		margin: 20px;
		letter-spacing: initial;
	}
	.recommend .spflex_col2 {
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: space-between !important;
	}
	.recommend .l_inbox .goods_box {
		width: 100% !important;
	}
	.recommend .l_inbox .goods_box figure {
		width: 30%;
		margin: 0;
		margin-right: 4%;
		display: inline-block;
		vertical-align: middle;
	}
	.recommend .l_inbox .goods_box .r_txt {
		width: 64%;
		display: inline-block;
		vertical-align: middle;
	}
	.full_sec {
		margin-top: 70px;
	}
}

.dis_none {
	display: none!important;
}

.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.button_more:hover {
	text-decoration: none;
	opacity: 0.8;
}

.button_more:hover:before {
	opacity: 0.5;
}
@media screen and (max-width: 768px) {
	.button_more {
		margin-bottom: 40px;
	}
}
	
.button_more_full {
	color: #000000;
	font-size: 18px;
	line-height: 60px;
	background: #ffffff;
	border: 2px solid #e5e5e1;
	width: 100%;
	height: 60px;
	display: inline-block;
	font-weight: bold;
	text-align: center;
	max-width: 1000px;
	margin: 0 auto;
}

.button_onlineshop {
    color: #000000;
    font-size: 18px;
    line-height: 40px;
    background: transparent;
    border: 2px solid #e5e5e1;
    width: 280px;
    display: block;
    font-weight: bold;
    text-align: center;
		margin: 9px auto 0;
		font-size: 14px;
    text-decoration: none;
}

.button_onlineshop:hover {
	text-decoration: none;
	opacity: 0.6;
}
@media screen and (max-width: 768px) {
	.button_onlineshop {
		width: 100%;
		margin: 10px auto 0;
	}
}

/*IE11 --fix*/

@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop,
	.gray_num {
		padding: 4px 2px 1px;
	}
	.list_page .num_list {
		padding-top: 10px!important;
	}
}
@media screen and (max-width: 768px) {
	.list_page {
		margin-top: 30px;
		margin-bottom: 48px;
	}
}


@media screen and (max-width: 768px) {
	.article {
		font-size: 15px;
		line-height: 29px;
	}
	.article img {
		width: 100%!important;
		height: auto!important;
	}
	section.information_sec h1:first-child {
		margin-top: 15px;
	}
}

/*Service icon_list_box*/
.icon_list_box li {
	width: 250px;
	min-height: 300px;
	margin: 0px 40px 40px;
	border: 1px solid #ccc;
	float: left;
}

.icon_list_box li .icon_head {
	height: 60px;
	padding: 20px;
	background-color: #ccc;
	display: flex;
	justify-content: space-evenly;
	align-items: center;
}

.icon_list_box li .icon_head img {
	height: fit-content;
	display: block;
	width: 60px;
    height: 60px;
}

.icon_list_box li .icon_head h3 {
	width: 60%;
	padding-left: 20px;
	text-align: left;
	font-size: 16px;
}

.icon_list_box li .list_txt {
	padding: 0 10px;
}

.icon_list_box li .icon_head p {
	width: 40px;
	height: 40px;
	font-size: 1.2rem;
	line-height: 40px;
	border: 1px solid #3c3c3c;
	border-radius: 50%;
}

.tsutaya-books .icon_list_box li {
	min-height: 320px;
}



@media screen and (max-width: 768px){
	header .logo img {
		width: 100%;
	}
	.icon_list_box {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.icon_list_box li {
		width: 47%;
		margin: 0 0 20px;
	}
	.icon_list_box li .icon_head {
		min-height: 60px;
		padding: 20px 0;
		flex-direction: column;
	}
	.icon_list_box li .icon_head img {
		width: 36px;
		height: 36px;
		margin-bottom: 10px;
	}
	.icon_list_box li .icon_head h3 {
		width: 90%;
		margin-top: 1px;
		margin-bottom: 0;
		padding: 0;
		text-align: center;
		line-height: 1.2;
		font-size: 12px;
	}

	.tsutaya-books .icon_list_box li .icon_head p, .tsutaya-books .icon_list_box li .icon_head h3 {
		margin: 0;
	}
}


/* TOPへ戻るボタン */
#bt_to_top {
	display: none;
	width: 50px;
	height: 50px;
	background: url("../img/icon/icon_totop_2x.png") no-repeat center;
	background-size: 50px 50px;
	position: fixed;
	right: 20PX;
	bottom: 54px;
	z-index: 1;
}

#bt_to_top:hover {
	background-image: url("../img/icon/icon_totop_ah_2x.png");
}

.scroll_tabs_container div.scroll_tab_inner span,
.scroll_tabs_container div.scroll_tab_inner li {
	padding: 0px;
}
.scroll_tabs_container div.scroll_tab_inner li {
	display: -moz-inline-stack;
	display: inline-block;
	list-style-type: none;
	width: auto;
	margin: 0;
	margin-right: 10px;
	background-color: #f6f6f3;
}
.scroll_tabs_container div.scroll_tab_inner li a {
	width: 100%;
	display: block;
	color: #888888;
	padding: 0 20px;
	box-sizing: border-box;
}
.scroll_tabs_container div.scroll_tab_inner li:hover {
	background-color: #e5e5e0;
	color: #000000;
}

.scroll_tabs_container div.scroll_tab_inner li:hover a {
	color: #000000;
}
.scroll_tabs_container .scroll_tab_left_button::before {
	content: "\25C0";
	line-height: 40px;
	padding-left: 0px;
}
.scroll_tabs_container .scroll_tab_right_button::before {
	content: "\25B6";
	line-height: 40px;
	padding-left: 15px;
}
@media screen and (max-width: 768px) {
	.scroll_tab_inner {
		overflow: scroll!important;
		left: 0px!important;
		right: 0px!important;
	}
	.scroll_tabs_container .scroll_tab_left_button,
	.scroll_tabs_container .scroll_tab_right_button {
		display: none!important;
	}
}

/* フッター */

footer {
	text-align: center;
	padding-top: 0px;
}
footer .sub_title_bar ul {
	display: inline-block;
	margin-left: -4px;
}
footer .share_menu {
	margin-bottom: 20px;
}
footer .share_menu li {
	display: table-cell;
	vertical-align: middle;
	width: 20px;
	padding: 0 10px;
}
footer .share_menu li.menu_mail_magazine {
	padding-right: 0;
	font-size: 14px;
	white-space: nowrap;
}
footer .footer_menu {
	padding: 30px 0 0px 0;
	margin-top: 40px;
	background: #e5e5e1;
	overflow: hidden;
}
footer .footer_menu .menu_info li {
	display: inline-block;
	font-size: 14px;
	line-height: 2.2;
}
footer .footer_menu .menu_info li:after {
	content: "|";
	display: inline-block;
	width: 17px;
	color: #c1c1c1;
	text-align: center;
}
footer .footer_menu .menu_info li:last-child:after {
	content: none;
}
footer .footer_menu .menu_info li {
	font-size: 12px;
}
footer .footer_menu .menu_info a {
	font-size: 10px;
	letter-spacing: -1px;
	color: #555;
}
footer .footer_menu .menu_sns .fb {
	display: inline-block;
	width: 170px !important;
}
footer .footer_menu .menu_copyright {
	margin-bottom: 20px;
}

@media screen and (min-width: 769px) {
	footer .shop_menu,
	footer .inner_footer_menu {
		display: inline-block;
		width: 1000px;
	}
}
footer .shop_menu li,
footer .footer_menu .menu_info li {
	display: inline-block;
	font-size: 14px;
	line-height: 2.2;
}
footer .shop_menu li:after,
footer .footer_menu .menu_info li:after {
	content: "|";
	display: inline-block;
	width: 30px;
	color: #c1c1c1;
	text-align: center;
}
footer .shop_menu li:last-child:after,
footer .footer_menu .menu_info li:last-child:after {
	content: none;
}
footer .footer_menu .menu_info li {
	font-size: 12px;
}
footer .footer_menu .menu_line {
	width: 42px;
}
footer .footer_menu .menu_mail_magazine {
	padding-top: 1px;
}
footer .footer_menu .menu_sns {
	display: inline-block;
	float: left;
}
footer .footer_menu .menu_info {
	display: inline-block;
	margin: 5px;
}
footer .footer_menu .menu_info a {
	font-size: 10px;
	letter-spacing: -1px;
	color: #555;
}
footer .footer_menu .menu_info li:after {
	width: 17px;
}
footer .footer_menu .menu_info ul {
	display: inline-block;
	margin-right: 0px;
}
footer .footer_menu .menu_sns:after,
footer .footer_menu .menu_info:after {
	content: "";
	clear: both;
}
footer .share_menu ul {
	display: inline-block;
	margin-left: -4px;
}

.portal_footer_TSUTAYA {
	margin-top: 60px;
	margin-bottom: -20px;
	padding-top: 10px;
	text-align: center;
	font-size: 0.6rem;
	border-top: 1px solid #e5e5e1;
}
.portal_footer_TSUTAYA img {
	width: 8%;
}


@media screen and (max-width: 768px) {
	footer {
		padding-top: 0;
	}
	footer .footer_menu {
		margin-top: 0;
	}
	footer .footer_menu .menu_info ul {
		margin: 10px 0;
		text-align: center;
	}
	footer .share_menu {
		margin-bottom: 15px;
	}
	footer .shop_menu li {
		width: 100%;
		height: 44px;
		line-height: 44px;
		text-align: left;
		border-top: 1px solid #e5e5e1;
		margin: 0;
		padding: 0;
		position: relative;
	}
	footer .shop_menu li:after {
		position: absolute;
		top: 12px;
		right: 15px;
		width: 0;
		height: 0;
		content: "";
		border: 10px solid transparent;
		border-left-color: #a7a79d;
	}
	footer .shop_menu li a {
		padding: 0 16px;
		font-size: 14px;
		display: block;
	}
	.portal_footer_TSUTAYA {
		margin-top: 40px;
		margin-bottom: 12px;
	}
	.portal_footer_TSUTAYA img {
		width: 30%;
	}
}

/* エラー */
.form_cont .form_txt {
    font-size: 0.8rem;
    text-align: center;
}

/*メンテナンス*/
.maintenance {
	margin-top: 50px;
    background: #333;
    text-align: center;
    line-height: 50px;
    margin-bottom: 80px;
    color: #fff;
    text-align: center;
    font-size: 14px;
}
.maintenance img {
    width: 24px;
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px 3px 0;
}
@media screen and (max-width: 768px) {
	.maintenance {
	    margin: 20px auto 70px;
	    line-height: 14px;
	    padding: 4%;
	    letter-spacing: 0.4;
	}
	.maintenance span {
	    display: block;
	}
}

/* インスタグラム */
.instagram .image {
	width: 25%;
	height: calc(1000px / 4);/*25%*/
	display: inline-block;
	position: relative;
}

.instagram .image > a > img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

@media screen and (max-width: 1000px) {
	.instagram {
		margin-bottom: 40px;
	}
	.instagram .image {
			width: 33%;
			height: calc(92vw / 3 - 7px);/*33vw*/
					display: inline-block;
			position: relative;
	}
	.instagram .image:nth-child(n+10) {
			display: none;
	}
}
.hide_pc {
	display: none; 
}
.hide_sp {
	display: block; 
} 
.hide_pc_inline {
	display: none !important; 
}

.hide_sp_inline {
	display: inline !important; 
} 
@media screen and (max-width: 768px) {
	.hide_pc {
		display: block; 
	}
	.hide_sp {
		display: none; 
	}
	.hide_pc_inline {
		display: inline !important; 
	}
	.hide_sp_inline {
		display: none !important; 
	} 
}

.g_link{display:flex}
