@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    common.css
*
*
------------------------------------------------------------------------------------------ */
/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}/*HTML5display-roleresetforolderbrowsers*/article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}table{border-collapse:collapse;border-spacing:0;}

body{
    font-family: 'Noto Sans JP', '游ゴシック','YuGothic',Meiryo,メイリオ,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
    color: #666;
    font-size : 18px;
    background-color:#fff3df;
    background-position: center;
    -webkit-text-size-adjust: 100%;
    word-break: normal;
    position: relative;
    z-index: 1;
}

body, html{
    width: 100%;
    height: 100%;
}

a, li, p, div, button, img{ outline: none !important; -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
a{ color: #ff8200; text-decoration: none;}

a[target="_blank"]::after{
    margin: 0 3px 0 1px;
    font-family:'Hobonichi-Icons'!important;
    content: "\e914";
    font-size: 85%;
    position: relative;
    top: -3px;
}

a.ico_none[target="_blank"]::after{
    display: none;
}

a.bd_none{
    border: none !important;
}

.indent_half_top{ position: relative; margin-left: -.5em !important;}
.indent_half{ position: relative; margin-left: -.5em;}

img{ height: auto; backface-visibility: hidden; -webkit-backface-visibility: hidden;}
a img{ transition: opacity .15s ease 0s;}

.is_sp a img.touch,
.is_pc a img:hover{ transition: opacity .15s ease .05s; opacity: .7;}

img.s_a_100{ width: auto !important; height: 100% !important;}
img.s_100_a{ width: 100% !important; height: auto !important;}
.fixed{ position: fixed !important;}
.ib{ display: inline-block;}
.disabled,
.disabled a{ cursor: default !important;}

.bd_cine{ text-decoration: underline;}

/* -------------------- font-face  --------------------*/
.ff_b{ font-weight: 500 !important; }
.ff_oleo{ font-family: 'Oleo Script', cursive !important;}
.ff_oleo-b{ font-family: 'Oleo Script', cursive !important; font-weight: bold !important;}
.ff_g{ font-family: 'Gravitas One', cursive !important; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}


/* -------------------- layout  --------------------*/
.c_anim{ opacity: 0;}


@media screen and (min-width : 641px){ 
/*------------------------------------------------------------------------------------------
*
*
    min-width : 641px
*
*
------------------------------------------------------------------------------------------ */

/* --------------------------------------------------
*
    common settings
*
-------------------------------------------------- */
body{
}

br.sp{ display: none;}
img.sp{ display: none;}
.switch_sp{ display: none !important;}

#wrap{
    width: 100%;
    min-width: 960px;
    height: 100%;
    padding-top: 60px;
    position: relative;
}

#home #wrap{
    padding-top: 220px;
}

#contents_area{
    min-width: 960px;
    overflow: hidden;
}


/* --------------------------------------------------
*
    header
*
-------------------------------------------------- */
#home header li.home{ display: none !important;}

header{
    width: 100%;
    min-width: 960px;
    height: 60px;
    box-sizing: border-box;
    background-image:url(../images/teaser/parts_bg_stripe.png);
    background-position: center;
    color: #fff;
    text-align: center;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}

#home header{
    width: 100%;
    padding-top: 25px;
    height: 220px;
    position: fixed;
    top: 0;
    transition: top .001s ease;
}

#home.fixed_header header{
    position: fixed;
    top: -162px !important;
}

header h1{
    margin: 0 0 15px 0;
    display: none;
}

#home header h1{ display: block;}

header h1 img{
    width: 153px;
    opacity: 1 !important;
}

#home header #header_inner{
    padding-top: 20px;
}

#gnav{ display: inherit !important;}
#gnav_inner{ width: 100% !important;}

header nav ul{
    display: inline-block;
    letter-spacing: -.40em;
}

header nav li{
    margin: 0 10px;
    display: inline-block;
    letter-spacing: 0;
    color: #fff;
    font-size: 14px;
    position: relative;
}

header nav li.home{
    margin: 0 20px 0 10px;
}

header nav li.home img{
    width: 47px;
    position: relative;
    top: 10px;
}

header nav li a{
    color: #fff;
    display: block;
    position: relative;
}

header nav .m_nav li a{
    display: block;
    padding: 0 0 8px 0;
    border-bottom: 2px solid transparent;
    transition: border .1s ease .0s, padding .1s ease .0s;
}

.is_pc header nav .m_nav li:hover a,
.is_sp header nav .m_nav li.touch a{
    padding: 0 0 5px 0;
    border-bottom: 2px solid #fff;
    transition: border .15s ease .05s, padding .15s ease .05s;
}

#about header nav .m_nav li.about a,
#map header nav .m_nav li.map a,
#access header nav .m_nav li.access a,
#timetable header nav .m_nav li.timetable a,
#stores header nav .m_nav li.stores a,
#stores_single header nav .m_nav li.stores a,
#faq header nav .m_nav li.faq a,
#news header nav .m_nav li.news a{
    padding: 0 0 5px 0;
    border-bottom: 2px solid #fff;
}

header nav li.disabled a{
    opacity: .3 !important;
    border: none !important;
}

#gnav li.disabled.map:after,
#gnav li.disabled.stores:after,
#gnav li.disabled.programs:after,
#gnav li.disabled.webstore:after{
    width: 100%;
    content: '11/10 OPEN';
    padding: 2px 0;
    background-color: #fff;
    border-radius: 3px;
    color: #ff8000;
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
    position: absolute;
    top: -18px;
    left: 0;
}

#gnav li.disabled.stores:after{
    content: '11/7 OPEN' !important;
}

#gnav li.disabled.webstore:after{
    content: '11/10 OPEN';
}

#gnav li.new:after{
    width: 100%;
    content: 'NEW';
    padding: 2px 0;
    background-color: #32b200;
    border-radius: 3px;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
    position: absolute;
    top: -18px;
    left: 0;
}

header nav .m_nav li.home a{
    border: none !important;
}

header nav li.webstore a{
    height: 18px;
    padding: 2px 10px 2px 10px !important;
    font-size: 14px;
    box-sizing: border-box;
    background-color: #fff;
    display: block;
    color: #ff8000;
    border-radius: 2px;
    transition: opacity .1s ease .0s;
}

.is_pc header nav .m_nav li.webstore a:hover,
.is_sp header nav .m_nav li.webstore a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}

header nav .s_nav li{
    margin: 0 6px !important;
}

header nav .s_nav li.fav a{ padding-left: 22px; transition: opacity .1s ease .0s;}
header nav .s_nav li.cart a{ padding-left: 24px; transition: opacity .1s ease .0s;}

.is_pc header nav .s_nav li a:hover,
.is_sp header nav .s_nav li a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}

header nav .s_nav li.fav a:after{
    content: '';
    width: 17px;
    height: 17px;
    display: block;
    background-image:url(../images/parts_nav_ico_favorite.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 17px;
    position: absolute;
    top: 0;
    left: 0;
}

header nav .s_nav li.cart a:after{
    content: '';
    width: 19px;
    height: 18px;
    display: block;
    background-image:url(../images/parts_nav_ico_cart.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 19px;
    position: absolute;
    top: 0;
    left: 0;
}

header nav .s_nav li .num{
    width: 28px;
    height: 18px;
    line-height: 18px;
    font-size: 13px;
    text-indent: 4px;
    display: block;
    color: #ff8000;
    text-align: center;
    background-image:url(../images/parts_nav_balloon.png);
    background-repeat: no-repeat;
    background-size: 28px;
    letter-spacing: 0;
    position: relative;
    top: -1px;
}

/* --------------------------------------------------
*
    footer
*
-------------------------------------------------- */
footer{
    background-color: #f3f3f3;
    color: #fff;
    position: relative;
}

footer:after{
    content: '';
    display: block;
    clear: both;
    font-size: 0;
}

footer #foot_nav{
    width: 960px;
    padding: 60px 0;
    margin: 0 auto;
    letter-spacing: -.40em;
    font-size: 14px;
    color: #666;
}

footer #foot_nav a{
    color: #666;
    font-size: 14px;
    display: inline-block;
}

.is_pc footer #foot_nav a:hover,
.is_sp footer #foot_nav a.touch{
    text-decoration: underline;
}

footer #foot_nav li.disabled a{
    opacity: .3 !important;
    text-decoration: none !important;
}

footer #foot_nav .col{
    width: calc(25% - 20px);
    margin: 0 20px 0 0;
    padding: 25px 0 0 0;
    display: inline-block;
    border-top: 1px solid #cacaca;
    vertical-align: top;
    letter-spacing: normal;
}

footer #foot_nav .col li{
    margin: 0 0 13px 0;
    letter-spacing: .06em;
    position: relative;
}

footer #foot_nav .col .title{
    margin: 0 0 8px 0;
    font-size: 14px;
}

footer #foot_nav .share_tw a,
footer #foot_nav .share_insta a{
    padding: 5px 0 0 28px;
    position: relative;
}

footer #foot_nav .share_tw a:after{
    content: '';
    width: 23px;
    height: 23px;
    padding: 0 0 0 0;
    display: block;
    background-image:url(../images/parts_foot_ico_tw.png);
    background-repeat: no-repeat;
    background-size: 23px;
    position: absolute;
    top: 0;
    left: 0;
}

footer #foot_nav .share_insta a:after{
    content: '';
    width: 23px;
    height: 23px;
    padding: 0 0 0 0;
    display: block;
    background-image:url(../images/parts_foot_ico_instagram.png);
    background-repeat: no-repeat;
    background-size: 23px;
    position: absolute;
    top: 0;
    left: 0;
}

footer #foot_btm{
    background-color: #979797;
    height: 50px;
    margin: 0 auto;
    line-height: 52px;
    overflow: hidden;
}

footer #foot_btm .foot_inner{
    width: 960px;
    margin: 0 auto;
    position: relative;
}

footer #foot_btm p{
    font-size: 12px;
    float: left;
}

footer #foot_btm a{
    color: #fff;
    display: inline-block;
}

footer #foot_btm .sns_share{
    margin: 0 110px 0 0;
    float: right;
    position: relative;
    top: 3px;
}

footer #foot_btm ul{
    letter-spacing: -.40em;
}

footer #foot_btm li{
    margin: 0 15px 0 0;
    display: inline-block;
    vertical-align: top;
    overflow: hidden;
    position: relative;
}

footer #foot_btm li a:after{
    content: '' !important;
}

.fb_iframe_widget{
    top: -19px;
}

footer #foot_btm p.copyright{
    color: #cacaca;
    position: absolute;
    top: 0;
    right: 0;
}

footer #foot_btm p.logo{
    margin: 3px 0 0 20px;
}

footer #foot_btm p.logo img{
    width: 223px;
}


} /* ----- min-width : 641px ----- */




/* --------------------------------------------------------------------------------------------------------------
*
    max-width: 640px
*
-------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {
/* --------------------------------------------------
*
    common settings
*
-------------------------------------------------- */
body{
    z-index: 10;
    overflow-x: hidden;
    overflow-y: scroll;
    font-size: 14px;
}

body, html{
    width: 100%;
    min-width: 100%;
}

br{ display: none;}
br.sp{ display: inherit;}
img.pc{ display: none !important;}
.switch_pc{ display: none !important;}

#wrap{
    padding-top: 45px;
}

/* --------------------------------------------------
*
    header
*
-------------------------------------------------- */
.on.gnav_none #wrap{
    display: none;
}

header{
    width: 100% !important;
    height: 40px;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
}

.on header{
    height: 100%;
}

.on.is_sp header{
    height: 100vh;
}

#header_inner{
    width: 100%;
    height: 100% !important;
    margin: 0 auto;
    position: relative;
}

#header_inner h1{
    width: 100%;
    height: 45px;
    padding: 8px 0 0 12px;
    box-sizing: border-box;
    background-color: #ff8000;
    background-repeat: no-repeat;
    text-align: left;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    transition: top .25s ease;
}

#header_inner h1 img{
    width: 36px;
}

#header_inner h1 a{
    display: block;
    position: relative;
    z-index: 10001;
}

#header_inner .hobo{
    text-align: center;
}

#header_inner .hobo img{
}

header ul{
    text-align: center;
}

header li{
    margin: 0 0 15px 0;
    position: relative;
}

header li a{
    display: inline-block;
    position: relative;
}

header li.hobo:hover img{
    opacity: .7 !important;
}

header .s_nav{
    margin: 0;
    width: 230px;
    position: fixed;
    top: 15px;
    right: 30px;
    z-index: 1000;
    transition: margin-top .25s ease;
}

header .s_nav li{
    display: inline-block;
    margin: 0 0 0 10px;
}

header .s_nav li.webstore{
    position: relative;
    top: -2px;
    left: 4px;
}

header .s_nav li.webstore a{
    height: 18px;
    padding: 2px 5px 2px 5px;
    font-size: 12px;
    box-sizing: border-box;
    background-color: #fff;
    display: block;
    color: #ff8000;
    border-radius: 2px;
    transition: opacity .1s ease .0s;
}

header .s_nav li.fav a{ padding-left: 22px; transition: opacity .1s ease .0s;}
header .s_nav li.cart a{ display: inline-block; box-sizing: border-box; transition: opacity .1s ease .0s;}

.is_pc header .s_nav li a:hover,
.is_sp header .s_nav li a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}

header .s_nav li.fav a:after{
    content: '';
    width: 17px;
    height: 17px;
    display: block;
    background-image:url(../images/parts_nav_ico_favorite.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 17px;
    position: absolute;
    top: 0;
    left: 0;
}

header .s_nav li.cart a:after{
    content: '';
    width: 19px;
    height: 18px;
    display: block;
    background-image:url(../images/parts_nav_ico_cart.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 19px;
    position: absolute;
    top: 0;
    left: 0;
}

header .s_nav li .num{
    width: 28px;
    height: 18px;
    line-height: 18px;
    font-size: 12px;
    text-indent: 4px;
    display: block;
    color: #ff8000;
    text-align: center;
    background-image:url(../images/parts_nav_balloon.png);
    background-repeat: no-repeat;
    background-size: 28px;
    letter-spacing: 0;
    position: relative;
    top: -1px;
}

header li.disabled a{
    opacity: .3 !important;
}

header .s_nav li.cart .num{
    visibility: hidden !important;
}


#gnav{
    width: 100%;
    height: 100%;
    min-height: 100%;
    margin: 0 auto;
    display: none;
    opacity: 0;
    box-sizing: border-box;
    color: #000;
    letter-spacing: .1em;
    text-align: center;
    position: absolute !important;
    top: 0;
    right: 0;
    z-index: 10;
}

.on #gnav{ display: block !important; opacity: 1;}

#gnav ul{
    padding: 0 20px 20px 20px;
}

#gnav li{
    text-align: left;
    font-size: 16px;
    margin: 0;
    border-top: 1px solid #ffc878;
    position: relative;
}

#gnav li.disabled a{
    opacity: .3 !important;
}

#gnav li:last-child{
    border-bottom: 1px solid #ffc878;
}

#gnav li a{
    padding: 15px 10px;
    display: block;
    transition: opacity .1s ease .0s;
    position: relative;
}

#gnav li a:after{
    content: '〉';
    font-size: 13px;
    position: absolute;
    top: 16px;
    right: 10px;
}

#gnav li.disabled a:after{ display: none;}

#gnav li.disabled.map:after,
#gnav li.disabled.stores:after,
#gnav li.disabled.programs:after,
#gnav li.disabled.webstore:after{
    content: '11/10 OPEN';
    color: #ff0000;
    font-size: 12px;
    font-weight: 500;
    position: absolute;
    top: 17px;
    right: 10px;
}

#gnav li.disabled.stores:after{
    content: '11/7 OPEN' !important;
}
#gnav li.disabled.webstore:after{ content: '11/10 OPEN';}

.is_pc #gnav li a:hover,
.is_sp #gnav li a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}

#gnav_inner{
    width: 100%;
    height: 100% !important;
    box-sizing: border-box;
    position: relative;
    z-index: 100;
    display: table !important;
}

#nav_wrap{
    padding: 80px 0 20px 0;
    text-align: left;
    display: table-cell;
    vertical-align: middle;
}

/*
    .gnav_ico
*/
header .gnav_ico{
    width: 40px;
    height: 40px;
    position: fixed;
    border-radius: 3px;
    text-align: right;
    display: block;
    top: 0;
    right: 5px;
    cursor: pointer;
    z-index: 100;
    transition: transform .1s ease .0s, top .25s ease;
}

header .gnav_ico span{
    border-radius: 2px;
    border-color: #fff !important;
}

header .gnav_ico span.top{
    width: 22px;
    border-top: 2px solid #fff;
    position: absolute;
    top: 11px;
    right: 11px;
}

header .gnav_ico span.mid{
    content: '';
    display: block;
    width: 22px;
    border-top: 2px solid #fff;
    position: absolute;
    top: 19px;
    right: 11px;
}

header .gnav_ico span.btm{
    content: '';
    display: block;
    width: 22px;
    border: none;
    position: relative;
    color: #fff;
    top: 27px;
    right: 11px;
}

header .gnav_ico span.btm:after{
    content: 'MENU';
    font-size: 10px;
    color: #fff;
    font-weight: normal;
    position: absolute;
    top: 0px;
    left: 15px;
}

header .gnav_ico.on span{
    border-color: #fff;
}

/* open */
header .gnav_ico.on span.top{
    top: 15px !important;
    transform: rotate(135deg) !important;
    -webkit-transform: rotate(135deg) !important;
    transition: top .17s ease, -webkit-transform .13s ease-out .23s, transform .13s ease-out .23s !important;
}

header .gnav_ico.on span.btm{
    top: 27px !important;
    transform: rotate(0) !important;
    -webkit-transform: rotate(0) !important;
}

header .gnav_ico.on span.mid{
    opacity: 1 !important;
    top: 15px !important;
    right: 11px !important;
    transform: rotate(45deg) !important;
    -webkit-transform: rotate(45deg) !important;
    transition: top .17s ease, -webkit-transform .13s ease-out .23s, transform .13s ease-out .23s !important;
}

header .gnav_ico.on span.btm:after{
    content: 'CLOSE';
    margin-left: -1px;
}

/* close */
header .gnav_ico span.top{
    transform: rotate(0);
    -webkit-transform: rotate(0);
    transition: top .17s ease .13s, -webkit-transform .13s ease-in, transform .13s ease-in;
}

header .gnav_ico span.btm{
    transform: rotate(0);
    -webkit-transform: rotate(0);
    transition: top .17s ease .13s, -webkit-transform .13s ease-in, transform .13s ease-in;
}

header .gnav_ico span.mid{
    transform: rotate(0);
    -webkit-transform: rotate(0);
    transition: top .17s ease .13s, -webkit-transform .13s ease-in, transform .13s ease-in;
}

header .overlay{
    width: 100%;
    height: 100%;
    position: fixed;
    display: none;
    background-color: #fff3df;
    opacity: 1;
    top: 0;
    left: 0;
    z-index: 1;
}


.is_sp header .overlay{
    height: 100vh;
    min-height: 100vh;
}


/* --------------------------------------------------
*
    footer
*
-------------------------------------------------- */
footer{
    background-color: #f3f3f3;
    color: #fff;
    position: relative;
}

footer:after{
    content: '';
    display: block;
    clear: both;
    font-size: 0;
}

footer #foot_nav{
    padding: 30px 10px 15px 10px;
    margin: 0 auto;
    letter-spacing: -.40em;
    font-size: 14px;
    color: #666;
}

footer #foot_nav a{
    color: #666;
    font-size: 12px;
    display: inline-block;
}

.is_pc footer #foot_nav a:hover,
.is_sp footer #foot_nav a.touch{
    text-decoration: underline;
}

footer #foot_nav li.disabled a{
    opacity: .3 !important;
    text-decoration: none !important;
}

footer #foot_nav .col{
    width: calc(50% - 20px);
    margin: 0 10px;
    padding: 15px 0 5px 0;
    display: inline-block;
    border-top: 1px solid #cacaca;
    vertical-align: top;
    letter-spacing: normal;
}

footer #foot_nav .col li{
    margin: 0 0 13px 0;
    letter-spacing: .06em;
    position: relative;
}

footer #foot_nav .col .title{
    margin: 0 0 8px 0;
    font-size: 14px;
}

footer #foot_nav .share_tw a,
footer #foot_nav .share_insta a{
    padding: 5px 0 0 26px;
    position: relative;
}

footer #foot_nav .share_tw a:after{
    content: '';
    width: 21px;
    height: 21px;
    padding: 0 0 0 0;
    display: block;
    background-image:url(../images/parts_foot_ico_tw.png);
    background-repeat: no-repeat;
    background-size: 21px;
    position: absolute;
    top: 0;
    left: 0;
}

footer #foot_nav .share_insta a:after{
    content: '';
    width: 21px;
    height: 21px;
    padding: 0 0 0 0;
    display: block;
    background-image:url(../images/parts_foot_ico_instagram.png);
    background-repeat: no-repeat;
    background-size: 21px;
    position: absolute;
    top: 0;
    left: 0;
}

footer #foot_btm{
    background-color: #979797;
    margin: 0 auto;
    text-align: center;
    overflow: hidden;
}

footer #foot_btm .foot_inner{
    margin: 0 auto;
    padding: 20px 0 0 0;
}

footer #foot_btm p{
    margin: 0 0 10px 0;
    font-size: 12px;
    line-height: 1.8em;
}

footer #foot_btm a{
    color: #fff;
    display: inline-block;
}

.is_pc footer #foot_btm a:hover,
.is_sp footer #foot_btm a.touch{
    text-decoration: underline;
}

footer #foot_btm .sns_share{
    margin: 20px 0;
    position: relative;
}

footer #foot_btm ul{
    letter-spacing: -.40em;
}

footer #foot_btm li{
    margin: 0 7px;
    display: inline-block;
    vertical-align: top;
    overflow: hidden;
    position: relative;
}

footer #foot_btm li a:after{
    content: '' !important;
}

footer #foot_btm p.copyright{
    color: #cacaca;
}

footer #foot_btm p.logo{
    margin: 3px 0 0 0;
}

footer #foot_btm p.logo img{
    width: 223px;
}



} /* ----- max-width: 640px ----- */


/* ------------------------------------------------------------
*
    .img_slider
     -> Setting jQuery Plugin slick.min.js
*
------------------------------------------------------------ */
.slick-dots,.slick-next,.slick-prev{position:absolute;display:block;padding:0}.slick-dots li button:before,.slick-next:before,.slick-prev:before{font-family:slick;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}.slick-next,.slick-prev{font-size:0;line-height:0;top:50%;width:20px;height:20px;-webkit-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%);cursor:pointer;color:transparent;border:none;outline:0;background:0 0}.slick-next:focus,.slick-next:hover,.slick-prev:focus,.slick-prev:hover{color:transparent;outline:0;background:0 0}.slick-next:focus:before,.slick-next:hover:before,.slick-prev:focus:before,.slick-prev:hover:before{opacity:1}.slick-next.slick-disabled:before,.slick-prev.slick-disabled:before{opacity:.25}.slick-next:before,.slick-prev:before{font-size:20px;line-height:1;opacity:.75;color:#fff}.slick-prev{left:-25px}[dir=rtl] .slick-prev{right:-25px;left:auto}.slick-prev:before{content:''}.slick-next:before,[dir=rtl] .slick-prev:before{content:'';}.slick-next{right:-25px}[dir=rtl] .slick-next{right:auto;left:-25px}[dir=rtl] .slick-next:before{content:''}.slick-dotted.slick-slider{margin-bottom:30px}.slick-dots{bottom:-25px;width:100%;margin:0;list-style:none;text-align:center}.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0 5px;padding:0;cursor:pointer}.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:0;background:0 0}.slick-dots li button:focus,.slick-dots li button:hover{outline:0}.slick-dots li button:focus:before,.slick-dots li button:hover:before{opacity:1}.slick-dots li button:before{font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:'';text-align:center;opacity:.25;color:#000}.slick-list,.slick-slider,.slick-track{position:relative;display:block}.slick-dots li.slick-active button:before{opacity:.75;color:#000}.slick-slider{-moz-box-sizing:border-box;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{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-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{top:0;left:0}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.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-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}

.img_slider{ opacity: 0;}
.img_slider .btn_prev,
.img_slider .btn_next{ opacity: 0;}
.img_slider a:after{
    display: none;
}
    
@media screen and (min-width : 641px){
.slick-dotted.slick-slider{ margin: 0;}

.slick-dots{
    width: 100% !important;
    min-width: 900px;
    display: table !important;
    text-align: center;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: inherit !important;
    bottom: -23px;
    z-index: 3;
}

.slick-dots li{
    margin: 0 6px;
}

.slick-dots li,
.slick-dots li button{
    width: 10px;
    height: 10px;
    display: inline-block;
    border: 0;
    border-radius: 10px;
    outline: none;
    position: relative;
}

button::-moz-focus-inner {
    border: 0;
}

.slick-dots li button:before{
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 10px;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #808080;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 10px;
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0;
}

.is_sp .slick-dots li.touch button:before,
.is_pc .slick-dots li:hover button:before,
.slick-dots li.slick-active button:before{
    background-color: #a7a7a7;
    opacity: 1;
}

.img_slider .btn_prev,
.img_slider .btn_next{
    display: inline-block;
    font-size: 23px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    bottom: -33px;
    color: #c8c8c8;
    transition: color .1s ease .0s;
    cursor: pointer;
    z-index: 10;
}

.is_pc .img_slider .btn_prev:hover,
.is_sp .img_slider .btn_prev.touch,
.is_pc .img_slider .btn_next:hover,
.is_sp .img_slider .btn_next.touch{
    color: #91b4e6;
    transition: color .1s ease .05s;
}

.img_slider .btn_prev{ left: 50%;}
.img_slider .btn_next{ right: 50%;}


}


/* --------------------------------------------------------------------------------------------------------------
*
    max-width: 640px
*
-------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {
.slick-dotted.slick-slider{ margin: 0;}

.slick-dots{
    width: 100% !important;
    display: table !important;
    text-align: center;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: inherit !important;
    bottom: -20px;
    z-index: 2;
}

.slick-dots li{
    margin: 0 5px;
}

.slick-dots li,
.slick-dots li button{
    width: 8px;
    height: 8px;
    display: inline-block;
    border: 0;
    border-radius: 8px;
    outline: none;
    position: relative;
}

button::-moz-focus-inner {
    border: 0;
}

.slick-dots li button:before{
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 8px;
    background-color: #cacaca;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 6px;
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0;
}

.is_sp .slick-dots li.touch button:before,
.is_pc .slick-dots li:hover button:before,
.slick-dots li.slick-active button:before{
    background-color: #666;
    opacity: 1;
}

.img_slider .btn_prev,
.img_slider .btn_next{
    display: inline-block;
    font-size: 20px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    bottom: -29px;
    color: #c8c8c8;
    transition: color .1s ease .0s;
    cursor: pointer;
    z-index: 10;
}

.is_pc .img_slider .btn_prev:hover,
.is_sp .img_slider .btn_prev.touch,
.is_pc .img_slider .btn_next:hover,
.is_sp .img_slider .btn_next.touch{
    color: #91b4e6;
    transition: color .1s ease .05s;
}

.img_slider .btn_prev{ left: 50%;}
.img_slider .btn_next{ right: 50%;}

} /* ----- max-width: 640px ----- */