/*** リセットCSS ***/
html, body {
width: 100%;
font-size: 1em;
-webkit-text-size-adjust: 100%;
}
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, p, 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;
}
a {
text-decoration: none;
}
img {
margin: 0;
padding: 0;
border: none;
}
area {
outline: none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
margin: 0;
padding: 0;
display: block;
}
p {
margin: 0;
padding: 0;
}
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;
}
/*** リセットCSS ここまで ***/

body {
font-family: 'azuki-p', Meiryo, メイリオ, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
position: relative;
-webkit-font-smoothing: subpixel-antialiased;
font-smooth: always;
line-height: 2.2em;
vertical-align: text-top;
}

.img-responsive {
display: block !important;
vertical-align: bottom !important;
height: auto !important;
max-width: 100% !important;
margin: 0 auto !important;
}
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .img-responsive { width: 100%; } /* IE11 */
}


.img-responsive-max {
height: auto;
width: 100%;
margin: 0 auto;
}

@media screen and (max-width:414px) and (orientation:portrait) {
.img-responsive {
width: 100% !important;
}
}

/* クリアフィックス */
.clearfix:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
.clearfix {
display: inline-block;
}
* html .clearfix {
height: 1%;
}
.clearfix {
display: block;
}

#loading{
width:64px;
height: 64px;
position: absolute;
left: 0;
right: 0;	
top: 0;
bottom:0;
margin:auto;
}
#loader-bg {
position: fixed;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
background: #FFF;
z-index: 1000;
}


div.footer_container {
width: 100%;
padding-bottom: 70px;
color: #FFFFFF;
background-color: #0c0802;
position: relative;
text-align: center;
}
div.footer_container a {
color: #FFFFFF;
}
div.footer_container .sns_button {
width: auto !important;
box-sizing: border-box;
margin: 0 auto;
padding: 20px 10px;
}
div.footer_container .sns_button a {
display: inline-block;
padding: 10px 5px;
box-sizing: border-box;
}
.footer_navi {
}
.footer_bannar {
background-color: #1f1508;
text-align: center;
width: 100%;
}
.footer_bannar ul {
max-width: 1350px;
margin: 0 auto;
}
.footer_bannar ul li {
width: 30%;
padding: 20px 1%;
float: left;
}
#back-top {
display: none;
}

@media screen and (max-width:414px) and (orientation:portrait) {
div.footer_container {
min-width: auto;
}
div.footer_container a {
}
div.footer_container .sns_button {
width: 31% !important;
}
div.footer_container .sns_button a {
width: 40% !important;
}
.footer_navi {
}
.footer_navi a {
display: block;
background-color: #3e2f1a;
width: 96%;
margin: 0 auto 10px;
padding: 1em 0;
text-align: center;
font-size: 4.8vw;
}
.footer_container .copyright {
padding: 0.3em 0;
font-size: 4.0vw !important;
}
.footer_bannar {
max-width: auto;
}
.footer_bannar ul {
width: 100%;
}
.footer_bannar ul li {
width: 46%;
padding: 2%;
}
#back-top {
display: none;
position: fixed;
bottom: 10px;
right: 20px;
z-index: 1;
}
#back-top.show {
display: block;
opacity: 1;
}
#back-top a span {
width: 100px;
height: 60px;
display: block;
margin-bottom: 7px;
/* rounded corners */
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
background-repeat: no-repeat;
background-position: center center;
}
#back-top a span.bt_a {
background-image: url(../images/up_kikki_a.gif);
}
#back-top a span.bt_b {
background-image: url(../images/up_kikki_b.gif);
}
}


.lazyload {
display: block;
border: 0;
opacity: 0;
}
.lazyload:not(.initial) {
transition: opacity 0s;
}
.lazyload.initial, .lazyload.loaded, .lazyload.error {
opacity: 1;
}
.lazyload:not([src]) {
visibility: hidden;
}
.pc-show {
display: inline-block;
}
.pc-show-block {
display: block;
}
.pc-hide {
display: none;
}

@media screen and (max-width:414px) and (orientation:portrait) {
.sp-show {
display: inline-block;
}
.sp-show-block {
display: block;
}
.sp-hide {
display: none;
}
}
