/* ヘッダーデザイン4302プラグイン_CSS */

/* ----------------------------
　header.twig（ティッカー）
---------------------------- */
/* ヘッダー最上部 */
.ec-headerNaviRole_area {
	display:none;
}
@media only screen and (min-width: 768px) {
header {
	padding-bottom:10px;
}
#page_product_list header {
	padding-bottom:0;
}
#page_product_detail header {
	padding-bottom:35px;
}
.ec-headerNaviRole_area {
	display:block;
	height:35px;
	background:#3C3C3C; /* ヘッダー最上部の背景（ティッカー背景） */
}
.ec-headerNaviRole {
	padding: 0;
	max-width:1090px;
}

/* ティッカー
----------------------- */
.ec-headerDescription {
	color: #fff; /* ティッカー文字色 */
	width:100%;
	overflow: hidden;
}
.ec-headerDescription .tickercontainer li {
	font-size:15px;
	font-weight:normal;
	list-style:none;
	text-align: center;
	position:relative;
	top:5px;
}
.ec-headerDescription #webTicker .tickercontainer li {
	font-size:14px;
	top:0;
}
.ec-headerDescription .tickercontainer li a {
	color:#fff; /* ティッカー文字色（リンク） */
	text-decoration:underline;
}
.ec-headerDescription .tickercontainer li a:hover {
	font-weight:bold;
}
}

/* ----------------------------
　ドロワーメニュー
---------------------------- */
/* ハンバーガーメニュー */
.ec-headerNavSP {
	font-size: 20px;
	border:3px solid #FFF;
	background:rgba( 0, 0, 0, 0.6 );
	color:#FFF;
	padding:7px 0 0 0;
}
.ec-drawerRoleClose {
	border:3px solid #FFF;
	background:rgba( 0, 0, 0, 0.6 );
	color:#FFF;
}
/* category_nav_sp.twig */
.ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
    padding: 10px 10px 0 10px;
    color: #FFF;
    background: #999;
}
/* login_sp.twig */
.ec-drawerRole .ec-headerLinkArea {
    background:#3C3C3C;
}

/* ----------------------------
　logo.twig（ロゴ）
---------------------------- */
.logo_area {
	position:relative;
	z-index:15;
	height:100px;
	background: #FFF; /* ヘッダー背景 */
	padding:0 20px;
}
.logo_area .logo {
	text-align:center;
}
.logo_area a,
.logo_area .click_area {
	color:#222; /* アイコン・テキストの色 */
	cursor:pointer;
}
.logo_area a:hover,
.logo_area .click_area:hover {
	text-decoration:none;
	opacity:0.7;
}
.logo_area .click_area i {
	font-size:26px;
}
.logo_area .click_area i,
.logo_area .click_area span {
	display:block;
}
.logo_area .click_area i {
	padding-bottom:3px;
}
@media only screen and (min-width: 768px){
.logo_area .logo_inner {
	width:100%;
}
.logo_area .logo {
	display:inline-block;
	width:40%;
	text-align:left;
}
.logo_area .item_area {
	display:inline-flex;
	justify-content:space-between;
	width:59%;
	position:relative;
	top:5px; /* 上余白（「新規会員登録」等の位置） */
}
.logo_area .item_area .item {
	flex:1;
	text-align:center;
}
.logo_area .item_area .item:not(:first-child) {
	border-left:2px dotted #DDD;
}
}
@media only screen and (min-width: 1090px){
.logo_area {
	padding:0;
}
.logo_area .logo_inner {
	width:1090px;
	margin:0 auto;
}
}

/* ロゴ：テキストで表示
----------------------- */
.logo_area .logo h2 {
	font-size: 28px;
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
		-1px 1px 0 #FFF, 1px -1px 0 #FFF,
		0px 1px 0 #FFF,  0-1px 0 #FFF,
		-1px 0 0 #FFF, 1px 0 0 #FFF;
}

/* ロゴ：画像で表示
----------------------- */
.logo_area .logo img {
	max-width:80%;
}
.logo_area .logo a {
	display:inline-block;
	position:relative;
	top:10px; /* 上余白（ロゴの位置） */
}
@media only screen and (min-width: 768px){
.logo_area .logo h2 {
	font-size: 30px;
}
.logo_area .logo img {
	max-width:100%;
}
.logo_area .logo a {
	top:18px; /* 上余白（ロゴ画像の位置） */
}
}

/* ----------------------------
　header_mypage.twig（新規会員登録・マイページ）
---------------------------- */
.logo_area .mypage {
	display:none;
}
@media only screen and (min-width: 768px){
.logo_area .mypage {
	display:block;
}
/* 展開 */
.logo_area .mypage .panel {
	display: none;
	position: absolute;
	left: 0;
    margin-top: 12px;
	border:1px solid #999;
	border-radius:0;
	background: #f8f8f8;
	color:#000;
	padding: 16px;
	width:100%;
}
.logo_area .mypage .panel.is-active {
	display: block;
}
.logo_area .mypage .content {
	display:flex;
}
.logo_area .mypage .content .message {
	width:50%;
	text-align:left;
	padding-right:16px;
	border-right:1px dotted #666;
}
.logo_area .mypage .content .mypage_btn {
	width:50%;
	padding-left:16px;
}
.logo_area .mypage .content .mypage_btn a {
	display:block;
	padding:15px 0;
	font-size:16px;
	color:#FFF;
	background:#69C;
}
}

/* ----------------------------
　header_favorite.twig（お気に入り）
---------------------------- */
.logo_area .favorite {
	display:none;
}
@media only screen and (min-width: 768px){
.logo_area .favorite {
	display:block;
}
/* 展開 */
.logo_area .favorite .panel {
	display: none;
	position: absolute;
	left: 0;
    margin-top: 12px;
	border:1px solid #999;
	border-radius:0;
	background: #f8f8f8;
	color:#000;
	padding: 16px;
	width:100%;
}
.logo_area .favorite .panel.is-active {
	display: block;
}
.logo_area .favorite .content {
	display:flex;
}
.logo_area .favorite .content .message {
	width:50%;
	text-align:left;
	padding-right:16px;
	border-right:1px dotted #666;
}
.logo_area .favorite .content .favorite_btn {
	width:50%;
	padding-left:16px;
}
.logo_area .favorite .content .favorite_btn a {
	display:block;
	padding:15px 0;
	font-size:16px;
	color:#FFF;
	background:#69C;
}
}

/* ----------------------------
　login.twig（ログイン）
---------------------------- */
.logo_area .login {
	display:none;
}
@media only screen and (min-width: 768px){
.logo_area .login {
	display:block;
}
/* 展開 */
.logo_area .login .panel {
	display: none;
	position: absolute;
	left: 0;
    margin-top: 12px;
	border:1px solid #999;
	border-radius:0;
	background: #f8f8f8;
	color:#000;
	padding: 16px;
	width:100%;
}
.logo_area .login .panel.is-active {
	display: block;
}
.logo_area .login .content {
	display:flex;
}
.logo_area .login .content .message {
	width:50%;
	text-align:left;
	padding-right:16px;
	border-right:1px dotted #666;
}
.logo_area .login .content .logout_btn {
	width:50%;
	padding-left:16px;
}
.logo_area .login .content .logout_btn a {
	display:block;
	padding:15px 0;
	font-size:16px;
	color:#FFF;
	background:#69C;
}
}

/* ----------------------------
　search_product.twig（商品検索）
---------------------------- */
/* ▼ドロワーメニュー */
.ec-drawerRole .ec-headerSearch {
    padding: 0;
    background: none;
}
.ec-drawerRole .ec-headerSearch .title {
	padding:10px 10px 0 10px;
	background:#3C3C3C;
	color:#FFF;
	font-size:16px;
	font-weight:bold;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
	background: #3C3C3C;
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	border:none;
	padding-top:5px;
	padding-bottom:5px
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search:before {
	top: 20px;
	right: 15px;
}
.ec-headerSearch .ec-headerSearch__keyword {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
	border:none;
	background: #FFF;
	padding-top:5px;
	padding-bottom:5px
}
.ec-headerSearch .ec-headerSearch__keywordBtn {
	top: 25px;
	right: 4px;
	font-size:16px;
}

.logo_area .ec-headerNaviRole__search.logo_search,
.search_icon {
	display:none;
}
@media only screen and (min-width: 768px){
.logo_area .ec-headerNaviRole__search.logo_search,
.logo_area .ec-headerNaviRole__search.logo_search .search_icon {
	display:block;
}
/* 展開 */
.logo_area .ec-headerSearch {
	display:none;
	position: absolute;
	left: 0;
    margin-top: 12px;
	border:1px solid #999;
	border-radius:0;
	background: #f8f8f8;
	padding: 16px;
	width:100%;
}
.logo_area .ec-headerSearch .title {
	display:none;
}
.logo_area .ec-headerSearch.is-active {
	display:block;
}
.logo_area .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search{
	border-radius: 4px;
	background: #fff;
	border:1px solid #CCC;
}
.logo_area .ec-headerSearch .ec-headerSearch__category .ec-select select {
	color: #333 ;
	max-width:100%;
}
.logo_area .ec-headerSearch .clear {
	clear:both;
}
/* ▼アイコン */
.logo_area .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search:before {
	top: 1.4em;
	right: 0.5em;
	border-top: 6px solid #333;
}
.logo_area .ec-headerSearch .ec-headerSearch__keyword{
	border-bottom-left-radius: 0;
	border-top-right-radius: inherit;
	border-bottom-right-radius: 0;
	background: none;
	border:none;
	border-bottom:1px solid #ccc;
	padding-bottom:3px;
	width:55%;
	height:48px;
}
.logo_area .ec-headerSearch .ec-headerSearch__keyword input {
	font-size:14px;
}
}

/* ----------------------------
　header_contact.twig（お問い合わせ）
---------------------------- */
.logo_area .contact {
	display:none;
}
@media only screen and (min-width: 768px){
.logo_area .contact {
	display:block;
}
/* 展開 */
.logo_area .contact .panel {
	display: none;
	position: absolute;
	left: 0;
    margin-top: 12px;
	border:1px solid #999;
	border-radius:0;
	background: #f8f8f8;
	color:#000;
	padding: 16px;
	width:100%;
}
.logo_area .contact .panel.is-active {
	display: block;
}
.logo_area .contact .content {
	display:flex;
}
.logo_area .contact .content .address {
	width:50%;
	text-align:left;
	padding-right:16px;
	border-right:1px dotted #666;
}
.logo_area .contact .content .contact_btn {
	width:50%;
	padding-left:16px;
}
.logo_area .contact .content .contact_btn a {
	display:block;
	padding:15px 0;
	font-size:16px;
	color:#FFF;
	background:#69C;
}
}

/* ----------------------------
　cart.twig cart_left.twig（カート）
---------------------------- */
.ec-cartNaviIsset__action a.ec-blockBtn--white {
	overflow: hidden;
	position:relative;
	margin-bottom: 0;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	touch-action: manipulation;
	cursor: pointer;
	background-image: none;
	border: 1px solid transparent;
	white-space: nowrap;
	font-size: 16px;
	border-radius: 4px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	text-decoration: none;
	color: #333;
	background-color: #fff; /* 初期ボタン色 */
	border:1px solid #999;
	display: block;
	width: 100%;
	height: 50px;
	line-height: 50px;
	padding: 0 16px;
}
.ec-blockBtn--white:hover {
	background:#999;
	color:#FFF;
	border:1px solid #999;
}

.ec-cartNavi {
	position: absolute;
	top:10px;
	right:30px;
}
.ec-cartNavi i.ec-cartNavi__icon {
	font-size:26px;
}
.ec-cartTotalQuantity {
	text-align:left;
	font-size:16px;
	margin-bottom:10px;
}
.ec-cartNaviIsset__action {
	display: flex;
	margin-bottom:20px;
}
.ec-cartNaviIsset__action a {
	height:50px;
}
.ec-cartNaviIsset__action a.ec-blockBtn--action {
	border-radius:0 5px 5px 0;
	width:50%;
}
.ec-cartNaviIsset__action a.ec-blockBtn--white {
	border-radius:5px 0 0 5px;
	width:50%;
}
.ec-cartNaviIsset__action .btn {
	padding-left:0;
	padding-right:0;
}
@media only screen and (min-width: 768px){
.ec-cartNavi {
	position:relative;
	top:0;
	right:0;
	border-radius:0;
	padding:0;
	display:block;
	min-width:inherit;
	min-width:auto;
	background:none;
}
.ec-cartNavi i.ec-cartNavi__icon {
	font-size:26px;
}
.ec-cartNavi i .ec-cartNavi__badge {
	background:#333;
}
.ec-cartNavi .ec-cartNavi__price {
	display:block;
}
.ec-cartNavi:hover {
	opacity:0.7;
}
}
/* 展開 */
.ec-cartNaviIsset,
.ec-cartNaviNull {
	position: absolute;
	right: 0;
    margin-top: 17px;
	border-bottom:10px solid #FFF;
	border-radius:0;
	background: #f8f8f8;
	color:#000;
	padding: 16px;
}
.ec-cartNaviIsset::before,
.ec-cartNaviNull::before {
	display:none;
}
.ec-headerRole__cart .left {
	display:none;
}
@media only screen and (min-width: 768px){
.ec-cartNaviIsset,
.ec-cartNaviNull {
	min-width:600px;
	max-width:600px;
	border:1px solid #999;
}
.ec-headerRole__cart .content {
	display:flex;
}
.ec-headerRole__cart .left {
	display:block;
	width:50%;
	text-align:left;
	padding-right:16px;
	border-right:1px dotted #666;
}
.ec-cartNaviIsset .content .left img {
	max-width:100%;
}
.ec-headerRole__cart .right {
	width:50%;
	margin-left:16px;
}
/* ポイント */
.ec-headerRole__cart .pointannounce_area {
	margin-bottom:20px;
}
.ec-headerRole__cart .pointannounce_area span {
}
.ec-headerRole__cart .pointannounce_area .common_block_title {
	font-size:16px;
	font-weight:bold;
}
.ec-headerRole__cart .pointannounce_area .common_block_title i {
	font-size:18px;
	font-weight:normal;
}

/* 送料無料 */
.ec-headerRole__cart .freedelive_area {
	text-align:center;
	margin-bottom:20px;
	font-size:16px;
	background:#fff;
	padding:10px;
	border:1px solid #CCC;
	color:#333;
}
.ec-headerRole__cart .freedelive_area .rule span {
	font-size:20px;
	font-weight:bold;
}
.ec-headerRole__cart .freedelive_area .free {
	font-weight:bold;
	font-size:20px;
	color:#DE5D50;
}
.ec-headerRole__cart .freedelive_area .icon {
	font-size:40px;
	color:#DE5D50;
}

/* 現在カート内に商品はございません */
.ec-cartNaviNull .ec-cartNaviNull__message {
	border:none;
	background:none;
	color:#333;
}
}

/* ----------------------------
　globalmenu.twig（カテゴリメニュー）
---------------------------- */
/* カテゴリナビ（PC）ヘッダー配置は非表示 */
.ec-layoutRole__header .ec-categoryNaviRole {
	display:none;
}
.ec-categoryNaviRole.globalmenu_area{
	display:none;
}
@media only screen and (min-width: 768px){
	
/* ◆メニューバー（親カテゴリ） 
---------------------------- */
.ec-categoryNaviRole.globalmenu_area{
	display:block;
	background:#F5F5F5; /* ★メニューバーの背景 */
	max-width:none;
	border-top:1px solid #DDD;
	border-bottom:1px solid #DDD;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav {
	width:100%;
	max-width:1090px;
    display: -ms-flexbox;
    display: flex;
	justify-content: space-around;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav > li {
	border-right:1px solid #DDD;
	text-align:center;
	flex:1;
	-ms-flex: 1;
	position:relative;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav > li > ul {
	position:absolute;
	top: 100%;            /* 1階層目の真下に配置 */
	left: 0;
	width: 100%;          /* ★親liの幅と100%同じにする */
	box-sizing: border-box;
	margin: 0;            /* デフォルトの余白をリセット */
	padding: 0;           /* デフォルトの余白をリセット */
	list-style: none;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav > li:first-child {
	border-left:1px solid #DDD; /* ★区切り線 */
}

/* 各メニュー項目 */
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li a {
	background:#F5F5F5; /* ★各メニューの背景 */
	color: #000; /* ★文字色 */
	font-weight: bold;
	padding: 16px;
	height: 48px;
	line-height: 16px;
	position:relative;
	/* 以下、上下中央揃え */
	display: flex;
	justify-content: center;
	align-items: center;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav > li:hover > a {
	background: #3C3C3C; /* ★オンマウス時の背景 */
	color:#FFF;
}

/* 子カテゴリありの場合のアイコン */
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li a.parent {
	padding-right:20px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li a i {
	position:absolute;
	top:14px;
	right:6px;
}

/* ◆2階層以降の子カテゴリ
---------------------------- */
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li ul li { /* 2階層の横幅 */
	width:auto;
	clear:both;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent2 ul li {
	width:544px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent3 ul li {
	width:362.3px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent4 ul li {
	width:271.5px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent5 ul li {
	width:217px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent6 ul li {
	width:180.6px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent7 ul li {
	width:154.7px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent8 ul li {
	width:135.25px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent9 ul li {
	width:120.1px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent10 ul li {
	width:108px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent11 ul li {
	width:98px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent12 ul li {
	width:89.8px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent13 ul li {
	width:82.8px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent14 ul li {
	width:76.8px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li.parent15 ul li {
	width:71.6px;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li ul li ul li { /* 3階層以降の横幅 */
	width:auto;
}

/* 2階層以降のアニメーション */
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li ul li {
	overflow: hidden;
	opacity: 0;
	transition:all .5s;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li:hover > ul > li {
	height: 48px;
	opacity: 1;
    overflow: visible;
	transition:all .5s;
}

.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li > ul > li:hover > ul > li {
	height: 48px;
    overflow: visible;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li > ul > li > ul > li:hover > ul > li {
	height: 48px;
    overflow: visible;
}
/* 各メニュー項目 */
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li ul li a {
	background: #3C3C3C; /* ★2階層の背景 */
	color: #FFF; /* ★2階層以降の文字色 */
	padding: 16px;
	height: 48px;
	line-height: 16px;
	border-left:none;
	border-right:none;
	font-weight:normal;
	border:none;
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav > li:hover li:hover > a {
	background: #535353; /* ★2階層のオンマウス時の背景 */
}

/* 3階層以降の子カテゴリ */
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li ul li ul li a {
	background: #858585; /* ★3階層以降の背景 */
}
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li:hover ul li ul li a:hover {
	background: #535353; /* ★3階層以降のオンマウス時の背景 */
}

/* 子カテゴリありの場合のアイコン */
.ec-categoryNaviRole.globalmenu_area .ec-itemNav__nav li ul li ul:before {
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 12px;
    color: white;
    position: absolute;
    top: 15px;
    right: auto;
    left: -15px;
}
}

/* =================================
　トップページスライダー
================================= */
.ec-sliderRole_area {
	background:#FFF;
	position:relative;
}
.ec-sliderRole {
	padding-left: 0;
	padding-right: 0;
	width: 100%;
	max-width: 1090px;
}
@media only screen and (min-width: 768px){
.ec-layoutRole__contentTop {
	z-index:1;
}
}
@media only screen and (min-width: 1090px){
.ec-sliderRole {
	padding-left: 0;
	padding-right: 0;
	max-width:100%;
}
}

.ec-sliderRole .slick-slider {
	padding-top:0;
	margin-bottom: 0;
}

.slick-slide {
	position:relative;
}

/* PC・スマホで画像の切り替え */
.ec-sliderRole_area .pc {
	display:none !important;
}
@media only screen and (min-width: 480px){
.ec-sliderRole_area .sp {
	display:none !important;
}
.ec-sliderRole_area .pc {
	display:block !important;
}
}

/* 矢印 */
.slick_arrow_prev,
.slick_arrow_next {
	position:absolute;
	font-size:40px;
	z-index:1;
	opacity:0;
	top:40%;
	cursor:pointer;
}
.slick_arrow_prev {
	left:20px;
	animation-name: slideInRightBack;
	animation-duration: 1s;
	animation-timing-function: ease;
}
.slick_arrow_next {
	right:20px;
	animation-name: slideInLeftBack;
	animation-duration: 1s;
	animation-timing-function: ease;
}
.ec-sliderRole_area:hover .slick_arrow_prev {
	opacity:0.8;
	animation-name: slideInLeft;
	animation-duration: 1s;
	animation-timing-function: ease;
}
.ec-sliderRole_area:hover .slick_arrow_next {
	opacity:0.8;
	animation-name: slideInRight;
	animation-duration: 1s;
	animation-timing-function: ease;
}
@keyframes slideInRightBack {
  from {
    opacity: 0.8;
    transform: translateX(0);
  }
  
  to {
    opacity: 0;
    transform: translateX(-20px);
  }
}
@keyframes slideInLeftBack {
  from {
    opacity: 0.8;
    transform: translateX(0);
  }
  
  to {
    opacity: 0;
    transform: translateX(20px);
  }
}
@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  
  to {
    opacity: 0.8;
    transform: translateX(0);
  }
}
@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(20px);
  }
  
  to {
    opacity: 0.8;
    transform: translateX(0);
  }
}
@media only screen and (min-width: 768px){
.slick_arrow_prev,
.slick_arrow_next {
	font-size:55px;
	top:45%;
}
.slick_arrow_prev {
	left:30px
}
.slick_arrow_next {
	right:30px
}
}

/* ドット */
.ec-sliderRole .slick-dots {
	position: absolute;
	bottom: 10px;
	display: block;
	width: 100%;
	padding: 0;
	list-style: none;
	text-align: center;
}
.ec-sliderRole .slick-dots li {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
}
.ec-sliderRole .slick-dots li button {
	font-size:0;
	line-height: 0;
	display: block;
	width: 20px;
	height: 20px;
	padding: 5px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}
.ec-sliderRole .slick-dots li button:hover,
.ec-sliderRole .slick-dots li button:focus {
	outline: none;
}
.ec-sliderRole .slick-dots li button:hover:before,
.ec-sliderRole .slick-dots li button:focus:before {
	opacity: 0.7;
}
.ec-sliderRole .slick-dots li button:before {
	content: "";
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 18px;
	height: 18px;
	text-align: center;
	opacity: .25;
	background-color: black;
	border-radius: 50%;
	border:3px solid #FFF;
}
.ec-sliderRole .slick-dots li.slick-active button:before {
	opacity: .5;
	border:3px solid #000;
	background-color: #FFF;
}

.ec-sliderRole .slick-dots li button.thumbnail img {
	width: 0;
	height: 0;
}

/* テキスト */
.ec-sliderRole .slick-slide .text1 {
	position:absolute;
	top:25%;
	left:10%;
	font-size:4.5vw;
	font-weight:bold;
	color:#FFF;
	text-shadow: 1px 2px 3px #808080;
}
.ec-sliderRole .slick-slide.slick-current .text1 {
	animation: SlideDown 1.5s ease 0s 1 normal;
}
.ec-sliderRole .slick-slide .text2 {
	position:absolute;
	top:40%;
	left:10%;
	font-size:3.5vw;
	font-weight:bold;
	color:#FFF;
	text-shadow: 1px 2px 3px #808080;
}
.ec-sliderRole .slick-slide.slick-current .text2 {
	animation: RightToLeft 2.0s ease 1s 1 normal;
	animation-fill-mode: backwards;
}
@keyframes SlideDown {
0% {
    opacity: 0;
    transform: translateY(-100px);
}
100% {
    opacity: 1;
    transform: translateY(0);
}
}
@keyframes RightToLeft {
0% {
    opacity: 0;
    transform: translateX(200px);
}
100% {
    opacity: 1;
    transform: translateX(0);
}
}

