@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    common.css
*
*
------------------------------------------------------------------------------------------ */
body, html{
    width: 100%;
    height: 100%;
    min-height: 100%;
    position: relative;
}

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

#contents_area img{ height: auto; backface-visibility: hidden; -webkit-backface-visibility: hidden;}

.btn-desktop{ z-index: 10;}
.c_anim{ opacity: 0;}

header[role="extra"] > a.btn-referrer{ display: none !important;}

#contents_area{
    position: relative;
    visibility: hidden;
}

.is_pc #contents_area:after{
    content: '';
    display: block;
    width: 100%;
    min-width: 1000px;
    height: 100%;
    background-image:url(../images/img_bg.jpg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
}

.is_sp #contents_area:after{
    content: '';
    display: block;
    width: 100vw;
    height: 100vh;
    min-height: 100vh;
    background-image:url(../images/img_bg.jpg);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
}

nav[role="drawer"] > div:first-child + div > div > ul:first-child > li:first-child + li ul::before{
    display: none;
}

nav[role="drawer"] > div > ul > li ul:before{
    display: none !important;
}

nav[role="drawer"] > div > ul > li:nth-child(12) ul:before{
    content: '' !important;
    padding: 10px 0 0 0 !important;
    display: block !important;
    font-size: 0 !important;
}

span{
    border: none !important;
}

header.device_sp span{
    display: block !important;
}

/* ------------------------------------------------------------
*
    .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;}

@media screen and (min-width : 641px){
.slick-dotted.slick-slider{ margin: 0;}

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

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

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

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

}


/* --------------------------------------------------------------------------------------------------------------
*
    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: right;
    vertical-align: middle;
    position: absolute !important;
    left: 0;
    top: inherit !important;
    bottom: 2px !important;
    z-index: 3;
}

.slick-dots li{
    margin: 8px 10px 8px auto;
}

.slick-dots li,
.slick-dots li button{
    width: 10px;
    height: 10px;
    display: 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;
    border: 2px solid #fff;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 9px;
    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: #58b7bc;
    opacity: 1;
}

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