@charset "UTF-8";
/* CSS Document */

/* ============================
  Common
============================ */
body {
    background-color: #FFF;
 	font-family     : "Lucida Grande", "Lucida Sans Unicode", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;
	font-size       : 13px;
	letter-spacing  : 1px;
    padding-bottom  : 0;
    color:#000;
}

a:before,
a:after,
a {
    color:#D61619;
    text-decoration:underline;
    /* ここで動く速度とか設定 */
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
body:not(.smartdevice) a:hover, body:not(.smartdevice) a:focus {
    color:#000;
}

/*
body:not(.smartdevice) a:hover img { opacity: 0.8; }
body#home:not(.smartdevice) a:hover img { opacity: 1; }
*/

br.pcbr { display: inline-block; }
br.spbr { display: none; }

ul {
    list-style:none;
}

ul.page_nav {
    text-align:center;
    padding:0;
}
ul.page_nav li {
    display:inline-block;
    margin:10px;
}
ul.page_nav li a {
    text-decoration:none;
}

ul.caution {
    padding:0;
}
ul.caution li {
    margin:5px;
    background:url(../img/common/ico_caution.png) no-repeat 0px 1px;
    padding:0 0 0 20px;
}

.fleft { float:left; }
.fright { float:right; }

img.fleft { margin:0 20px 20px 0; }
img.fright { margin:0 0 20px 20px; }

div.bkb8 { 
    border:8px #000 solid;
    padding:30px;
    margin:0 auto 50px;
}
div.bkb8>h3,
body#news .inner >h3 {
    font-size:30px;
    font-weight: bold;
    color:#FFF;
    margin: 0 0 0px 0;
    padding:22px 0 18px 75px;
    background:url(../img/common/ico_kirakira.png) no-repeat;
    text-align: left;
    text-shadow:
    -1px 0px #000,
    0px -1px #000,
    0px 1px #000,
    1px 0px #000,
    1px 2px #000,
    2px 1px #000,
    2px 3px #000,
    3px 2px #000,
    3px 4px #000,
    4px 3px #000,
    4px 5px #000,
    5px 4px #000,
    5px 6px #000,
    6px 5px #000;
}


/* ふわふわさせたいものに fuwafuwaクラスを付与 */
.fuwafuwa {
	-webkit-animation-name:fuwafuwa; /* fuwafuwaっていうアニメーションをしてね！ */
	-webkit-animation-duration:1s;
	-webkit-animation-iteration-count:infinite;
	/*-webkit-animation-direction:alternate;*/
	-webkit-animation-timing-function:ease;
	
	-moz-animation-name:fuwafuwa;
	-moz-animation-duration:1s;
	-moz-animation-iteration-count:infinite;
	/*-moz-animation-direction:alternate;*/
	-moz-animation-timing-function:ease;
}
/* fuwafuwaっていうアニメーションはこんなふうだよ！ */
@-webkit-keyframes fuwafuwa {
	0% {-webkit-transform:translate(0, 0);}
	50% {-webkit-transform:translate(0, -5px);}
	100% {-webkit-transform:translate(0, 0);}
}
@-moz-keyframes fuwafuwa {
	0% {-moz-transform:translate(0, 0);}
	50% {-moz-transform:translate(0, -5px);}
	100% {-moz-transform:translate(0, 0);}
}


@media (max-width: 991px) {
}
@media (max-width: 767px) {
    br.pcbr { display: none; }
    br.spbr { display: inline-block; }
    
    div.bkb8 { 
        padding:10px;
    }
    div.bkb8>h3,
    body#news .inner >h3 {
        font-size:28px;
        margin: 0 0 15px 0;
    }
}


/* ===== header ===== */
header {
    background:rgba(214,22,25,0.9);
    border-bottom:8px solid #000;
    position:fixed;
    top:0;
    left:0;
    width: 100%;
    z-index: 1;
}
.navbar-wrapper {
    position:relative;
    width:960px;
    margin:0 auto;
}
.navbar-wrapper .container {
    padding:0;
}
nav.navbar div.navbar-header {
}
nav.navbar div.navbar-header h1 {
    margin:0;
}
nav.navbar div.navbar-header a {
    background : url(../img/header/logo.png) no-repeat center;
    display    : block;
    width      : 248px;
    height     : 60px;
    text-indent: -9999px;
}

nav.navbar ul.navbar-nav {
    float: right;
    margin: 0 167px 0 0;
}
nav.navbar ul.navbar-nav>li>a {
    font-size:12px;
    padding:20px 16px;
    color:#FFF;
    text-decoration:none;
    position:relative;
    letter-spacing:0;
}
body:not(.smartdevice) nav.navbar ul.navbar-nav>li>a:hover {
    text-decoration:underline;
}
nav.navbar ul.navbar-nav>li:not(:first-child)>a:before {
    content:"";
    display:block;
    border-left:1px solid #FFF;
    height:12px;
    position: absolute;
    top: 24px;
    left: 0px;
}

.navbar-wrapper p.tpoint_balloon {
    background : url(../img/header/tpoint_balloon.png) no-repeat;
    position:absolute;
    top:-25px;
    right:-10px;
    width      : 180px;
    height     : 166px;
    display:none;
    text-indent: -9999px;
    background-size: 180px auto;
}

@media (max-width: 991px) {
    header { padding: 0 20px; }
    .navbar {
        min-height: 30px;
    }
    .navbar-wrapper { width: 100%; }
    nav.navbar div.navbar-header a {
        width          : 160px;
        height         : 38px;
        background-size: 160px auto;
    }

    nav.navbar ul.navbar-nav { margin: 0 120px 0 0; }
    nav.navbar ul.navbar-nav>li>a {
        font-size:11px;
        padding:10px 10px;
    }
    nav.navbar ul.navbar-nav>li:not(:first-child)>a:before {
        height:11px;
        top: 14px;
    }

    .navbar-wrapper p.tpoint_balloon {
        top:-20px;
        right:-20px;
        width      : 140px;
        height     : 130px;
        background-size:140px auto;
    }
}
@media (max-width: 767px) {
    nav.navbar div.navbar-header a {
        margin-top: 4px;
    }
    
    nav.navbar ul.navbar-nav {
        margin: 0 0 0 0;
        width: 100%;
        text-align: center;
    }
    nav.navbar ul.navbar-nav>li>a {
        font-size:16px;
    }
    nav.navbar ul.navbar-nav>li:not(:first-child)>a:before {
        display:none;
    }
    
    .navbar-wrapper p.tpoint_balloon {
        background : url(../img/header/tpoint.png) no-repeat;
        top:8px;
        right:45px;
        width      : 36px;
        height     : 36px;
        background-size:36px auto;
    }
    .navbar-inverse .navbar-toggle {
        padding: 10px 6px;
        margin-right: 0;
        border-color: #FFF;
    }
}


/* ===== div.container ===== */
div.container {
    width:100%;
    padding:0;
}

/* 店内写真 */
#shopimg {
    display: block;
    width:100%;
    height: 150px;
    background-position: center center;
    background-size: cover;
    position:relative;
    border-bottom:8px solid #000;
}
#shopimg:after {
    content:"";
    display: block;
    width:100%;
    height: 142px;
    position:absolute;
    background:url(../img/home/img_over.png);
}
#home #shopimg {
    height: 500px;
}
#home #shopimg:after {
    height: 492px;
}

div.inner {
    width:930px;
    margin:0 auto;
    padding:50px 0;
    position:relative;
}
#home div.inner {
    width:960px;
}

body:not(#home) div.inner h2 {
    font-size:40px;
    font-weight: bold;
    color:#FFF;
    text-shadow:
    -2px -1px #000,
    -1px -2px #000,
    -1px 0px #000,
    0px -1px #000,
    0px 1px #000,
    1px 0px #000,
    1px 2px #000,
    2px 1px #000,
    2px 3px #000,
    3px 2px #000,
    3px 4px #000,
    4px 3px #000,
    4px 5px #000,
    5px 4px #000,
    5px 6px #000,
    6px 5px #000;
    position: absolute;
    top: -75px;
}

@media (max-width: 991px) {
    div.inner {
        width:768px;
        padding: 50px 30px;
    }
    #home div.inner { width:768px; }
}
@media (max-width: 767px) {
    /* 店内写真 */
    #shopimg { height: 120px; }
    #shopimg:after { height: 112px; }
    #home #shopimg { height: 240px; }
    #home #shopimg:after { height: 232px; }

    div.inner {
        width:100%;
        padding: 30px 20px;
    }
    #home div.inner { width:100%; }
    
    body:not(#home) div.inner h2 {
        font-size:26px;
        text-shadow:
        -2px -1px #000,
        -1px -2px #000,
        -1px 0px #000,
        0px -1px #000,
        0px 1px #000,
        1px 0px #000,
        1px 2px #000,
        2px 1px #000,
        2px 3px #000,
        3px 2px #000,
        3px 4px #000,
        4px 3px #000;
        top: -65px;
    }
    body:not(#home) div.inner h3 {
        font-size:18px;
        padding:13px 0 8px 40px;
        background-size:40px auto;
    }

}


/* ===== footer ===== */
footer {
    background: #000;
    margin-top: 50px;
}
footer>div {
    position:relative;
    width:960px;
    margin:0 auto;
    padding:10px;
    background-color: #000;
}
footer>div:after {
    content:"";
    display:block;
    clear:both;
}
footer>div .box1 {
    position:relative;
    background : #FFFFFF;
    float:left;
    width:460px;
    height:430px;
    overflow:hidden;
}
footer>div .box2 {
    position:relative;
    background : url(../img/footer/bg2.png) no-repeat;
    background-size: cover;
    float:right;
    width:470px;
    height:430px;
}
footer>div .box1 p.f_staff a::after {
    content:"";
    display:block;
    position:absolute;
    left:10px;
    bottom:10px;
    width:92px;
    height:86px;
    background : url(../img/footer/ico_clicktap.png) no-repeat;
}
body:not(.smartdevice) footer>div .box1 p.f_staff a:hover:after {
    left:15px;
}
footer>div .box1 p.f_staff img {
    position: absolute;
    bottom: 0;
    left: 0;
    display:block;
    width:460px;
    height:430px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
footer>div .box1 p.f_staff a {
    display:block;
    width:460px;
    height:430px;
}
body:not(.smartdevice) footer>div .box1 p.f_staff a:hover img {
    width:480px;
    height:449px;
    left:-10px;
    bottom:-10px;
    opacity: 1 !important;
}

footer>div .box2 ul.f_link {
    padding:14px 0 0 50px;
}
footer>div .box2 ul.f_link li {
    padding:0;
}
footer>div .box2 ul.f_link li:nth-child(5) {
    display: inline-block;
}
footer>div .box2 ul.f_link li:nth-child(6) {
    display: inline-block;
    margin-left: 65px;
}
footer>div .box2 ul.f_link li a {
    font-size:15px;
	position: relative;
    text-decoration:none;
    color:#000;
}
body:not(.smartdevice) footer>div .box2 ul.f_link li a:hover {
    text-decoration:underline;
}
footer>div .box2 ul.f_link li a::after,
footer>div .box2 ul.f_link li a::before {
	display: block;
	content: '';
	position: absolute;
}
footer>div .box2 ul.f_link li a::after {
	top: 7px;
	left: -1em;
	width: 7px;
	height: 7px;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
footer>div .box2 ul.f_link li a::before {
	top: 10px;
	left: -1.025em;
	width: 9px;
	height: 1px;
	background-color: #666;
}
footer>div .box2 ul.f_link li a:hover:after { left: -0.8em; }
footer>div .box2 ul.f_link li a:hover:before { left: -0.825em; }

footer>div .box2 p.f_ec a {
    position: absolute;
    text-indent:-99999px;
    top: 140px;
    left:-22px;
    display:block;
    width:276px;
    height:254px;
    background : url(../img/footer/ec.png) no-repeat;
    background-size:276px auto;
}
body:not(.smartdevice) footer>div .box2 p.f_ec a:hover {
    background-size:320px auto;
    width:320px;
    height:295px;
    top: 104px;
    left:-42px;
    z-index: 1;
}
footer>div .box2 p.f_recruit a {
    position: absolute;
    text-indent:-99999px;
    top: -30px;
    right:-10px;
    display:block;
    width:222px;
    height:236px;
    background : url(../img/footer/balloon_recruit.png) no-repeat;
    background-size:222px auto;
}
body:not(.smartdevice) footer>div .box2 p.f_recruit a:hover {
    background-size:285px auto;
    width:285px;
    height:318px;
    top: -54px;
    right:-46px;
}
footer>div .box2 p.f_recruit:after {
    content:"";
    position: absolute;
    bottom: 60px;
    right:0px;
    display:block;
    width:241px;
    height:230px;
    background : url(../img/footer/bg_recruit.png) no-repeat;
    background-size:241px auto;
    pointer-events: none;
}
footer>div .box2 p.f_copy {
    position: absolute;
    text-align: center;
    bottom: 12px;
    width: 100%;
    margin: 0;
}

footer p#page-top {
    position:absolute;
    bottom:450px;
    text-align:center;
    width:100%;
    margin: 0 -10px;
    height: 50px;
}
footer p#page-top a {
    position:relative;
    color:#FFF;
    font-size:16px;
    text-decoration:none;
    display: block;
    height: 50px;
    line-height: 50px;
}
body:not(.smartdevice) footer p#page-top a:hover {
    font-size:18px;
}
footer p#page-top a:before {
    position:absolute;
    content:"";
    display:block;
	width: 0;
	height: 0;
	border-bottom: 60px solid #000;
	border-right: 140px solid transparent;
	border-top: 60px solid transparent;
	border-left: 140px solid transparent;
    left: 50%;
    margin-left: -140px;
    bottom: 0;
    z-index:-1;
}

@media (max-width: 991px) {
    footer>div { width:768px; }
    footer>div .box1 {
        width:365px;
        height:341px;
    }
    footer>div .box2 {
        width:375px;
        height:341px;
    }
    footer>div .box1 p.f_staff img {
        position: absolute;
        bottom: 0;
        left: 0;
        display:block;
        width:365px;
        height:341px;
        -webkit-transition: all 0.2s ease;
        transition: all 0.2s ease;
    }
    footer>div .box1 p.f_staff a {
        display:block;
        width:365px;
        height:341px;
    }
    body:not(.smartdevice) footer>div .box1 p.f_staff a:hover img {
        width:380px;
        height:355px;
        left:-10px;
        bottom:-10px;
        opacity: 1;
    }
    footer>div .box2 ul.f_link { padding:3px 0 0 33px; }
    footer>div .box2 ul.f_link li { padding:1px 0; }
    footer>div .box2 ul.f_link li a { font-size:13px; }
    footer>div .box2 p.f_ec a {
        top: 112px;
        left:-20px;
        width:210px;
        height:193px;
        background-size:210px auto;
    }
    body:not(.smartdevice) footer>div .box2 p.f_ec a:hover {
        background-size:230px auto;
        width:230px;
        height:212px;
        top: 98px;
        left:-26px;
    }
    footer>div .box2 p.f_recruit a {
        top: -37px;
        right:-10px;
        width:180px;
        height:185px;
        background-size:180px auto;
    }
    body:not(.smartdevice) footer>div .box2 p.f_recruit a:hover {
        background-size:200px auto;
        width:200px;
        height:207px;
        top: -54px;
        right:-10px;
    }
    footer>div .box2 p.f_recruit:after {
        bottom: 46px;
        width:210px;
        height:200px;
        background-size:210px auto;
    }
    footer>div .box2 p.f_copy {
        bottom: 10px;
        font-size:11px;
    }

    footer p#page-top { bottom:360px; }

}
@media (max-width: 767px) {
    footer>div { width:375px; }
    footer>div .box1 {
        float:none;
        width:355px;
        height:332px;
        margin-bottom:10px;
    }
    footer>div .box2 {
        float:none;
        width:355px;
        height:324px;
    }
    
    footer>div .box2 ul.f_link { padding:5px 0 0 32px; }
    footer>div .box2 ul.f_link li { padding:0; }
    footer>div .box2 ul.f_link li a { font-size:12px; }
    
    footer>div .box2 p.f_ec a {
        top: 96px;
    }
    body:not(.smartdevice) footer>div .box2 p.f_ec a:hover {
        background-size:220px auto;
        width:220px;
        height:203px;
        top: 90px;
        left:-26px;
    }
    footer>div .box2 p.f_recruit a {
        top: -35px;
        right:-10px;
        width:190px;
        height:202px;
        background-size:180px auto;
    }
    body:not(.smartdevice) footer>div .box2 p.f_recruit a:hover {
        background-size:200px auto;
        width:200px;
        height:213px;
        top: -54px;
        right:-10px;
    }
    footer>div .box2 p.f_recruit:after {
        bottom: 45px;
        width:185px;
        height:176px;
        background-size:185px auto;
    }
    footer>div .box2 p.f_copy {
        bottom: 9px;
    }

    footer p#page-top { bottom:680px; }
}


/* ============================
  Home
============================ */
/* キャンペーン画像スライド */
#home .slider {
    position:relative;
    border-bottom:8px solid #000;
}

div.over_shopimg {
    width: 960px;
    height: 500px;
    position: relative;
    margin: -500px auto 0;
}

/* 公式ブログリンクボタン */
div.box_blog {
    position: absolute;
    bottom  : 8px;
    left    : 0;
}
div.box_blog a {
    background-image : url(../img/home/btn_blog_1.png);
    background-repeat: no-repeat;
    display          : block;
    width            : 240px;
    height           : 210px;
    text-indent      : -9999px;
}
body:not(.smartdevice) div.box_blog a:hover {
    background-image : url(../img/home/btn_blog_2.png);
}

/* 特殊な告知枠 */
div.box_topics {
    position   : absolute;
    bottom     : 13px;
    right      : 0;
}
div.box_topics img {
    width      : 750px;
}

/* side navigation (Link to Darts Shop TiTO) */
#dctLink {
    position: fixed;
    z-index : 1000;
}
#dctLink a {
    display    : block;
    width      : 45px;
    height     : 180px;
    text-indent: -9999px;
    background : url(../img/link/link_dct.png) no-repeat;
}
#dctLink:hover{ right: 0px !important; }

@media (max-width: 991px) {
    div.over_shopimg {
        width: 730px;
    }
    
    /* 特殊な告知枠 */
    div.box_topics img {
        width: 580px;
    }
}

@media (max-width: 767px) {
    div.over_shopimg {
        width: 370px;
        height: 240px;
        margin-top: -240px;
    }
    
    /* 公式ブログリンクボタン */
    div.box_blog a {
        width: 160px;
        height: 140px;
        background-size: cover;
    }
    
    /* 特殊な告知枠 */
    div.box_topics {
        right: 5px;
    }
    div.box_topics img {
        width: 290px;
    }
    
    #dctLink { display: none; }
}


/* center banner (Link to Darts Shop TiTO) */
#dctBnr {
    text-align: center;
    margin-top: 20px;
}
#dctBnr a {
    /*
    display            : block;
    width              : 100%;
    max-width          : 375px;
    height             : 100px;
    text-indent        : -9999px;
    background         : url(../img/bnr/bnr_dct.png) no-repeat;
    background-size    : 90%;
    background-position: center;
    margin             : 10px auto -20px;
    */
}

@media (min-width: 768px){
    #dctBnr { display: none; }
}


/* NEWS */
div.inner.news {
    position: relative;
}
/*
div.inner.news:after {
    content:"";
    clear:both;
    display:block;
}
*/
div.inner.news h2 {
    background:url(../img/home/news.png) no-repeat;
    display:block;
    text-indent:-99999px;
    width:160px;
    height:154px;
    position:absolute;
    top:0;
    left:-20px;
}
div.inner.news ul.newslist {
    border:8px solid #000;
    /*float:left;*/
    /*width:460px;*/
    min-height: 110px;
    margin: 0;
    padding: 0px 170px 10px 140px;
    line-height:1.2;
}
div.inner.news ul.newslist li {
    margin: 18px 0;
    position: relative;
    padding-left: 65px;
}
div.inner.news ul.newslist li span.icon {
    position: absolute;
    display:block;
    color:#FFF;
    border-radius:5px;
    padding: 2px 5px;
    font-weight: bold;
    margin-bottom:2px;
    width: 60px;
    text-align: center;
    line-height:1.1;
    top: -2px;
    left: 0;
}
div.inner.news ul.newslist li span.open { background-color:#FFA511; }
div.inner.news ul.newslist li span.info { background-color:#65CDFF; }

div.inner.news ul.newslist li a {
    text-decoration:underline;
    color:#000;
}
body:not(.smartdevice) div.inner.news ul.newslist li a:hover {
    color:#D61619;
    text-decoration:none;
}
div.inner.news ul.newslist li span.date {
    font-size:11px;
}

div.inner.news p.btn_news {
    position:absolute;
    bottom: 60px;
    /*left: 15px;*/
    right: 15px;
}
div.inner.news p.btn_news a {
    display:block;
    width:140px;
    height:68px;
    background:url(../img/home/btn_news.png) no-repeat;
    background-size:140px auto;
    text-indent:-9999px;
}
body:not(.smartdevice) div.inner.news p.btn_news a:hover {
    width:150px;
    height:73px;
    background-size:150px auto;
    margin:-5px -5px -5px 0;
}

div.inner.news div.fb-page {
    float:right;
    width:460px;
}

/* Facebookページプラグイン・Twitter埋め込みウィジェット */
div.inner.sns {
}
div.inner.sns h2 {
    display: none;
}
div.inner.sns ul {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    padding: 0;
}
div.inner.sns ul > li {
    width: 460px;
    margin-bottom: 20px;
}

/* Fb画像スライド */
#home .infiniteslide>ul {
    list-style: none;
    margin: 0;
    padding: 0;
    height:200px;
    border-top:8px solid #000;
    border-bottom:8px solid #000;
}
#home .infiniteslide>ul>li {
}
#home .infiniteslide>ul>li>a {
    display:block;
    width:200px;
    height:200px;
    background-position:center;
    background-size:cover;
}
body#home:not(.smartdevice) .infiniteslide>ul>li>a:hover {
    opacity:0.8;
}
.infiniteslide>ul>li>a>img {
    display:none;
}

/* トップページショップリスト */
div.inner.shop h2 {
    background:url(../img/home/shoplist.png) no-repeat;
    display:block;
    text-indent:-99999px;
    width:211px;
    height:102px;
}

div.inner.shop nav ul#dropmenu {
    margin:-35px 15px 0 auto;
    text-align:right;
}
div.inner.shop nav ul#dropmenu li {
    display: inline-block;
    color: #C9CACC;
    border: 1px solid #C9CACC;
    border-radius: 20px;
    padding: 3px 12px;
    margin: 2px;
    font-size: 16px;
    font-weight: bold;
    cursor:pointer;
    /* ここで動く速度とか設定 */
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

body:not(.smartdevice) div.inner.shop nav ul#dropmenu li:hover {
    color: #FFF;
    border: 1px solid #D61619;
    background:#D61619;
}
div.inner.shop nav ul#dropmenu li.on {
    color: #FFF;
    border: 1px solid #D61619;
    background:#D61619;
    cursor:default;
}

div.inner.shop ul.shoplist {
    overflow:hidden;
    padding:20px 0;
}
div.inner.shop ul.shoplist li {
    float:left;
    line-height: 1.2;
    font-weight:bold;
}
div.inner.shop ul.shoplist li a {
    font-size:20px;
    background-repeat:no-repeat;
    background-size:220px auto;
    background-position:center;
    display:block;
    width:240px;
    height:370px;
    color:#FFF;
    text-decoration:none;
    padding: 40px 0 0 35px;
    text-shadow:
    -1px 0px #000,
    0px -1px #000,
    0px 1px #000,
    1px 0px #000,
    1px 2px #000,
    2px 1px #000,
    2px 3px #000,
    3px 2px #000,
    3px 4px #000,
    4px 3px #000,
    4px 5px #000,
    5px 4px #000;
}
body:not(.smartdevice) div.inner.shop ul.shoplist li a:hover {
    font-size:30px;
    background-size:240px auto;
    padding: 5px 0 0 5px;
}
div.inner.shop ul.shoplist li a>span {
    display:block;
    font-size:16px;
}
div.inner.shop ul.shoplist li a:hover>span {
    font-size:19px;
}
div.inner.shop h2.fc {
    background:url(../img/home/fclist.png) no-repeat;
    margin-top   : 50px;
    margin-bottom: 30px;
    position     : relative;
}
div.inner.shop h2.fc:after {
    content    : "キャンペーン等は対象外となります。詳しい情報は店舗まで直接お問い合わせください。";
    display    : block;
    width      : 600px;
    text-indent: 0;
    font-size  : 14px;
    position   : absolute;
    left       : 230px;
    top        : 40px;
}
div.inner.shop ul.fcList {
    margin-bottom: 80px;
    padding      : 0;
    text-align   : center;
}
div.inner.shop ul.fcList a {
    text-decoration: none;
    display        : inline-block;
    width          : 300px;
    margin         : 8px;
    vertical-align : top;
}
div.inner.shop ul.fcList a:hover li { background-color: rgba(255, 192, 203, 0.71); }

div.inner.shop ul.fcList li {
    /*
    display: inline-block;
    width  : 300px;
    margin : 10px;
    */
    border    : 3px solid #000;
    /* padding: 15px; */
    color     : #000;
    min-height: 158px;
}
div.inner.shop ul.fcList li p:nth-of-type(1) {
    font-size       : 14px;
    font-weight     : bold;
    /* border-bottom: 1px dotted #ccc; */
    background-color: rgba(214, 22, 25, 0.9);
    color           : #fff;
    padding         : 5px 0;
    margin-bottom   : 0;
}
div.inner.shop ul.fcList li p:nth-of-type(1) a { color: #fff; }
div.inner.shop ul.fcList li p:nth-of-type(1) span.tel {
    font-size  : 12px;
    font-weight: normal;
}
div.inner.shop ul.fcList li p:nth-of-type(2) {
    margin-bottom: 0;
    text-align   : left;
    padding      : 15px;
}
div.inner.shop p.btn_shoplist { text-align: center; }
div.inner.shop p.btn_shoplist a {
    color          : #D61619;
    border         : 2px solid #D61619;
    border-radius  : 10px;
    padding        : 5px 15px;
    font-size      : 24px;
    text-decoration: none;
}
body:not(.smartdevice) div.inner.shop p.btn_shoplist a:hover {
    color     : #FFF;
    background: #D61619;
}

div.inner.shop h2.handling {
    background   : url(../img/home/handlinglist.png) no-repeat;
    margin-top   : 50px;
    margin-bottom: 30px;
    position     : relative;
}
div.inner.shop h2.handling:after {
    content    : "TRiNiDADバレル、CONDORフライトのお試しが可能です";
    display    : block;
    width      : 600px;
    text-indent: 0;
    font-size  : 14px;
    position   : absolute;
    left       : 230px;
    top        : 40px;
}
div.inner.shop ul.handlingList {
    margin-bottom: 80px;
    padding      : 0;
}
div.inner.shop ul.handlingList > li {
    display      : flex;
    margin-bottom: 30px;
}
div.inner.shop ul.handlingList > li h4 {
    width          : 100px;
    line-height    : 1.2;
    font-weight    : bold;
    background     : #efefef;
    margin         : 0;
    padding        : 5px;
    display        : flex;
    align-items    : center;
    justify-content: center;
    margin-bottom  : 10px;
    margin-right   : 10px;
    font-size      : 110%;
}
div.inner.shop ul.handlingList > li ul {
    padding: 0;
    width  : 100%;
}
div.inner.shop ul.handlingList > li ul li {
    border       : 3px solid #000;
    color        : #000;
    display      : flex;
    align-items  : center;
    margin-bottom: 10px;
}
div.inner.shop ul.handlingList > li ul li p.name {
    font-size       : 14px;
    font-weight     : bold;
    background-color: rgba(214, 22, 25, 0.9);
    color           : #fff;
    padding         : 10px 15px;
    margin-bottom   : 0;
    line-height     : 1;
    min-width       : 300px;
    text-align      : center;
}

div.inner.shop ul.handlingList > li ul li p.zip {
    line-height: 1;
    margin     : 0 10px;
}
div.inner.shop ul.handlingList > li ul li p.add {
    line-height: 1;
    margin     : 0;
}

/* トップページ サイトシール */
div.site_seal {
    text-align: center;
    margin    : 20px auto 60px;
}

@media (max-width: 991px) {
    /* キャンペーン画像スライド */
    #home .slider #film_roll_slider img { width:730px; }

    .slider .btn_prev { margin-left: -350px; }
    .slider .btn_next { margin-right: -350px; }
    
    /* NEWS */
    div.inner.news h2 {
        width: 120px;
        height: 115px;
        /* top: -10px; */
        left: 8px;
        background-size: 120px auto;
    }
    div.inner.news ul.newslist {
        width: 100%;
        padding: 0 100px 10px 100px;
        font-size: 11px;
    }
    div.inner.news ul.newslist li { margin: 10px 0; }
    div.inner.news ul.newslist li span.icon {
        border-radius:5px;
        padding: 2px 5px;
        margin-bottom:2px;
    }

    div.inner.news p.btn_news {
        right: 42px;
        bottom: 50px;
    }
    div.inner.news p.btn_news a {
        width: 100px;
        height: 50px;
        background-size: 100px auto;
    }
    body:not(.smartdevice) div.inner.news p.btn_news a:hover {
        width:100px;
        height:50px;
        background-size:100px auto;
        margin:0 0 0 5px;
    }

    /* トップページショップリスト */
    div.inner.shop h2,
    div.inner.shop h2.fc,
    div.inner.shop h2.handling {
        width          :180px;
        height         :87px;
        background-size:180px auto;
    }

    div.inner.shop nav ul#dropmenu {
        margin    :5px 0 0 0;
        text-align:left;
        padding   : 0;
    }
    div.inner.shop nav ul#dropmenu li { font-size: 14px; }

    div.inner.shop ul.shoplist { margin: 0 -10px; }
    
    div.inner.shop h2.fc:after,
    div.inner.shop h2.handling:after {
        left : 200px;
        top  : 30px;
        width: 480px;
    }
    div.inner.shop ul.handlingList > li ul li {
        display   : block;
        text-align: center;
    }
    div.inner.shop ul.handlingList > li ul li p.zip {
        display       : inline-block;
        line-height   : 3;
        letter-spacing: 0;
    }
    div.inner.shop ul.handlingList > li ul li p.add {
        display       : inline-block;
        line-height   : 3;
        letter-spacing: 0;
    }
}
@media (max-width: 767px) {
    /* キャンペーン画像スライド */
    #home .slider #film_roll_slider img { width:370px; }
    
    /* NEWS */
    div.inner.news h2 {
        width: 120px;
        height: 125px;
        top: -15px;
        left: 20px;
        background-size: 120px auto;
    }
    div.inner.news ul.newslist {
        /* float:none; */
        /* width:100%; */
        /* min-height:150px; */
        padding: 80px 10px 5px 10px;
        /* margin:0 0 20px 0; */
    }
    div.inner.news ul.newslist li { margin: 10px 0; }
    div.inner.news ul.newslist li span.icon {
    }

    div.inner.news p.btn_news {
        bottom: initial;
        /* left: 34px; */
        top: 120px;
        top: 50px;
    }
    div.inner.news p.btn_news a {
        width: 91px;
        height: 52px;
        background-size: 91px auto;
    }
    div.inner.news div.fb-page {
        float:none;
        width:100%;
    }

    /* トップページショップリスト */
    div.inner.shop h2,
    div.inner.shop h2.fc {
        width          : 100%;
        height         : 60px;
        background-size: contain;
    }
    div.inner.shop h2.handling {
        width          : 100%;
        height         : 80px;
        background-size: contain;
    }

    div.inner.shop nav ul#dropmenu li {
        font-size: 13px;
        padding: 2px 8px;
    }

    div.inner.shop ul.shoplist {
        margin: 10px;
        padding: 0 0 20px 0;
        text-align: center;
    }
    div.inner.shop ul.shoplist li {
        float  : none;
        display: inline-block;
        width  : 145px;
    }
    div.inner.shop ul.shoplist li a {
        font-size      : 15px;
        background-size: 140px auto;
        width          : 150px;
        height         : 231px;
        padding        : 7px 0 0 6px;
        text-align     : left;
        text-shadow:
        -1px 0px #000,
        0px -1px #000,
        0px 1px #000,
        1px 0px #000,
        1px 2px #000,
        2px 1px #000,
        2px 3px #000,
        3px 2px #000,
        3px 4px #000,
        4px 3px #000;
    }
    body:not(.smartdevice) div.inner.shop ul.shoplist li a:hover {
        font-size      : 16px;
        background-size: 150px auto;
        padding        : 5px 0 0 5px;
    }
    div.inner.shop ul.shoplist li a>span { font-size:11px; }
    div.inner.shop ul.shoplist li a:hover>span { font-size:12px; }    
    
    div.inner.shop h2.fc,
    div.inner.shop h2.handling { margin: 30px 0 50px; }
    
    div.inner.shop h2.fc:after {
        left : 0;
        top  : 70px;
        width: 100%;
    }
    div.inner.shop h2.handling:after {
        left : 0;
        top  : 85px;
        width: 100%;
    }
    div.inner.shop ul.handlingList { padding: 10px 0 0 0; }
    div.inner.shop ul.handlingList > li { display: block; }
    div.inner.shop ul.handlingList > li h4 {
        width     : 100%;
        text-align: center;
    }
    div.inner.shop ul.handlingList > li ul li p.zip {
        display    : block;
        line-height: 1.2;
        text-align : left;
        padding    : 15px 15px 5px;
        margin     : 0;
    }
    div.inner.shop ul.handlingList > li ul li p.add {
        display    : block;
        line-height: 1.2;
        padding    : 0 15px 15px;
        text-align : left;
    }
}


/* ============================
  店舗一覧
============================ */
body#shop nav ul#dropmenu {
    margin:0 auto;
    text-align:center;
    padding: 0;
}
body#shop nav ul#dropmenu li {
    display: inline-block;
    color: #C9CACC;
    border: 1px solid #C9CACC;
    border-radius: 20px;
    padding: 3px 12px;
    margin: 2px;
    font-size: 16px;
    font-weight: bold;
    cursor:pointer;
    /* ここで動く速度とか設定 */
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

body#shop:not(.smartdevice) nav ul#dropmenu li:hover {
    color: #FFF;
    border: 1px solid #D61619;
    background:#D61619;
}
body#shop nav ul#dropmenu li.on {
    color: #FFF;
    border: 1px solid #D61619;
    background:#D61619;
    cursor:default;
}

body#shop ul.shoplist {
    /*overflow:hidden;*/
    padding:20px 0;
}
body#shop ul.shoplist > li {
    /*float:left;*/
    line-height: 1.2;
    margin: 18px;
    display:inline-block;
    vertical-align: text-top;
}
body#shop ul.shoplist > li:nth-of-type(2n+1) {
    /*clear:both;*/
}
body#shop ul.shoplist > li a {
    width: 425px;
    border: 8px solid #000;
    display:block;
    padding:20px;
    text-decoration:none;
    min-height: 386px;
    position:relative;
    color: #000;
}
body#shop.smartdevice ul.shoplist > li a:after {/*スマホデバイスの時ボタン表示*/
    position:absolute;
    bottom:-8px;
    right:-8px;
    content:"詳細を見る";
    display:block;
    background:#000;
    color:#FFF;
    text-align:center;
    padding:15px;
}
body#shop:not(.smartdevice) ul.shoplist > li a:hover {
    color:#000;
}
body#shop:not(.smartdevice) ul.shoplist > li a:after {
    position:absolute;
    top:150px;
    right:100px;
    content:"";
    display:block;
    width:10px;
    height:10px;
    background:url(../img/shop/btn_detail.png);
    background-size:10px auto;
    opacity: 0;
}
body#shop:not(.smartdevice) ul.shoplist > li a:hover:after {
    top:15px;
    right:-15px;
    width:138px;
    height:160px;
    background-size:138px auto;
    opacity: 1;
}
body#shop ul.shoplist > li a img.shopimg {
    width:409px;
    height:151px;
    margin:-20px -20px 5px -20px;
}
body#shop:not(.smartdevice) ul.shoplist > li a:hover img.shopimg {
    opacity: 1;
}
body#shop ul.shoplist > li p.name {
    font-weight    : bold;
    font-size      : 24px;
    color          : #FFF;
    text-decoration: none;
    padding        : 10px 0;
    text-shadow:
    -1px 0px #000,
    0px -1px #000,
    0px 1px #000,
    1px 0px #000,
    1px 2px #000,
    2px 1px #000,
    2px 3px #000,
    3px 2px #000,
    3px 4px #000,
    4px 3px #000,
    4px 5px #000,
    5px 4px #000;
}
body#shop ul.shoplist > li p.name span {
    font-size   : 18px;
    margin-right: 10px;
}

body#shop ul.shoplist > li dl {
    padding: 0 0 0 40px;
    margin : 10px 0 0 0;
}
body#shop ul.shoplist > li dl dt {
    display  : none;
    font-size: 11px;
}
body#shop ul.shoplist > li dl dd {
    line-height:1.2;
    padding:2px 0;
}
body#shop ul.shoplist > li dl.tel {
    background:url(../img/shop/ico_tel.png) no-repeat;
}
body#shop ul.shoplist > li dl.tel dd {
    font-size: 26px;
    font-weight: bold;
}
body#shop ul.shoplist > li dl.address {
    background:url(../img/shop/ico_address.png) no-repeat;
}
body#shop ul.shoplist > li dl.address dd span {
    display:block;
    font-size:11px;
}
body#shop ul.shoplist > li dl.open {
    background:url(../img/shop/ico_open.png) no-repeat;
    padding-right: 80px;
}
body#shop ul.shoplist > li dl.open dt {
    display:block;
}
body#shop div.fcList {
    text-align: center;
}
body#shop h3.chokuei,
body#shop div.fcList h3 {
    text-align      : center;
    margin          : 50px 0 30px;
    /* border-left     : 10px solid #000000; */
    border-bottom   : 1px solid #000000;
    border-top      : 1px solid #000000;
    /* border-right    : 10px solid #000000; */
    padding         : 10px;
    /* background-color: rgba(214, 22, 25, 0.9); */
    /* color           : #fff; */
}
body#shop h3.chokuei { margin-top: 0; }

body#shop h3.fc {
    margin: 100px 0 0;
}
body#shop h3.chokuei span {
    display: block;
    padding: 10px 0 0;
}
body#shop div.fcList a:last-child dl { margin-bottom: 100px; }

body#shop div.fcList a:hover dl { background-color: rgba(255, 192, 203, 0.71); }

body#shop div.fcList dl {
    float     : left;
    width     : 445px;
    border    : 3px solid #000;
    margin    : 10px;
    padding   : 15px;
    color     : #000;
    min-height: 180px;
}
body#shop div.fcList dl dt {
    display : inline-block;
    width   : 80px;
    float   : left;
    clear   : both;
    position: relative;
}
body#shop div.fcList dl dt:after {
    content : ":";
    position: absolute;
    left    : 70px;
}
body#shop div.fcList dl dt.shopName {
    font-size    : 15px;
    font-weight  : bold;
    /* border-bottom: 1px dotted #ccc; */
    display         : block;
    width           : 100%;
    float           : none;
    margin-bottom   : 15px;
    background-color: rgba(214, 22, 25, 0.9);
    color           : #fff;
}
body#shop div.fcList dl dt.shopName:after { display: none; }

body#shop div.fcList dl dd {
    float     : right;
    text-align: left;
    width     : 320px;
}

body#shop ul#handling.shoplist > li {
    width        : auto;
    border       : 8px solid #000;
    display      : block;
    padding      : 20px 50px;
    color        : #000;
    margin-bottom: 30px;
}
body#shop ul#handling.shoplist > li h4 {
    font-weight    : bold;
    font-size      : 22px;
    color          : #FFF;
    text-decoration: none;
    padding        : 10px 0;
    text-shadow:
    -1px 0px #000,
    0px -1px #000,
    0px 1px #000,
    1px 0px #000,
    1px 2px #000,
    2px 1px #000,
    2px 3px #000,
    3px 2px #000,
    3px 4px #000,
    4px 3px #000,
    4px 5px #000,
    5px 4px #000;
}
body#shop ul#handling.shoplist > li ul li { margin-bottom: 10px; }
body#shop ul#handling.shoplist > li p.name {
    font-size     : 20px;
    letter-spacing: 0px;
    margin        : 0;
    text-shadow   : none;
    color         : #000;
    font-weight   : bold;
    padding       : 5px 0;
}
body#shop ul#handling.shoplist > li p.zip {
    display     : inline-block;
    font-size   : 85%;
    margin-right: 5px;
}
body#shop ul#handling.shoplist > li p.add { display: inline-block; }

@media (max-width: 991px) {
    body#shop nav ul#dropmenu li {
        font-size: 14px;
    }

    body#shop ul.shoplist > li {
        margin: 8px;
    }
    body#shop ul.shoplist > li a {
        width: 334px;
        padding:10px;
        min-height: 386px;
    }
    body#shop:not(.smartdevice) ul.shoplist > li a:hover:after {
        top:-30px;
    }
    body#shop ul.shoplist > li a img.shopimg {
        width:318px;
        height:117px;
        margin:-10px -10px 5px -10px;
    }
    body#shop div.fcList dl {
        width: 330px;
    }
    body#shop div.fcList dl dt {
        width: 60px;
    }
    body#shop div.fcList dl dt:after { left: 60px; }
    
    body#shop div.fcList dl dd { width: 220px; }
}
@media (max-width: 767px) {
    body#shop nav ul#dropmenu li {
        font-size: 13px;
        padding: 2px 8px;
    }

    body#shop ul.shoplist > li {
        float:none;
        margin: 10px 0;
    }
    body#shop ul.shoplist > li a {
        width: 100%;
        padding:10px;
        min-height: inherit;
    }
    body#shop.smartdevice ul.shoplist > li a:after {/*スマホデバイスの時ボタン表示*/
        padding: 15px;
        font-size: 12px;
        width: 72px;
    }
    body#shop:not(.smartdevice) ul.shoplist > li a:after {
        top:150px;
        right:100px;
        width:10px;
        height:10px;
        background-size:10px auto;
    }
    body#shop:not(.smartdevice) ul.shoplist > li a:hover:after {
        top:5px;
        right:-10px;
        width:100px;
        height:115px;
        background-size:100px auto;
    }
    body#shop ul.shoplist > li a img.shopimg {
        width:100%;
        height:auto;
        margin:0 0 5px 0;
    }
    body#shop ul.shoplist > li a p.name {
        font-size:20px;
        padding: 8px 0;
        text-shadow:
        -1px 0px #000,
        0px -1px #000,
        0px 1px #000,
        1px 0px #000,
        1px 2px #000,
        2px 1px #000,
        2px 3px #000,
        3px 2px #000,
        3px 4px #000,
        4px 3px #000;
    }
    body#shop ul.shoplist > li a p.name span {
        font-size:16px;
        margin-right:8px;
    }

    body#shop ul.shoplist > li a dl.tel dd {
        font-size: 24px;
    }
    body#shop div.fcList h3 {
        margin-top: 50px !important;
    }
    body#shop h3.chokuei,
    body#shop div.fcList h3 { padding: 5px !important; }
    body#shop div.fcList dl {
        float  : none;
        display: inline-block;
        padding: 0 0 5px;
        width  : 300px;
    }
    body#shop div.fcList dl dt {
        float           : none;
        background-color: #eee;
        width           : 100%;
    }
    body#shop div.fcList dl dt.shopName {
        /*
        background   : none;
        color        : #000;
        border-bottom: 1px dotted #ccc;
        */
        padding      : 10px;
        margin-bottom: 10px;
    }
    body#shop div.fcList dl dt:after { display: none; }
    body#shop div.fcList dl dd {
        float        : none;
        width        : 100%;
        text-align   : center;
        margin-bottom: 10px;
        margin-top   : 5px;
        padding      : 0 5px;
    }
    body#shop div.fcList dl dd:nth-of-type(2) { text-align: left; }
    
    body#shop div.fcList dl dd:last-child { margin-bottom: 0; }
    
    body#shop h3.chokuei span {
        letter-spacing: 0;
        font-size     : 12px;
    }
    body#shop ul#handling.shoplist > li { padding: 10px 20px; }
    body#shop ul#handling.shoplist > li ul { padding-left: 10px; }
    body#shop ul#handling.shoplist > li p.name { padding-bottom: 5px; }
    body#shop ul#handling.shoplist > li p.zip {
        display      : block;
        font-size    : 80%;
        margin-right : 0;
        margin-bottom: 0;
    }
    body#shop ul#handling.shoplist > li p.add {
        font-size: 90%;
        display  : block;
    }
}


/* ============================
  リアル店舗情報ページ
============================ */

/*店舗一覧へボタン*/
body#shop p.btn_shoplist {
    position:relative;
}
body#shop p.btn_shoplist.bottom {
    margin-bottom:120px;
}
body#shop p.btn_shoplist a {
    position:absolute;
    background:url(../img/shop/btn_shoplist.png) no-repeat;
    display:block;
    width:107px;
    height:62px;
    background-size:107px auto;
    text-indent:-99999px;
    top:-10px;
    right:0;
}
body#shop p.btn_shoplist.bottom a {
    right:30px;
}
body#shop:not(.smartdevice) p.btn_shoplist a:hover {
    width:130px;
    height:75px;
    background-size:130px auto;
    top:-15px;
}

body#shop h3 {
    font-size:30px;
}
body#shop h3 span {
    font-size:15px;
}

body#shop img.shopimg_top {
    width:100%;
    height:auto;
}

body#shop h4 {
    font-size:30px;
    padding:20px 0;
    letter-spacing: 0;
}

body#shop .shopinfobox {
}
body#shop .shopinfobox:after {
    content:"";
    display:block;
    clear:both;
}
body#shop .shopinfobox .box1 {
    float:left;
    width: 450px;
}
body#shop .shopinfobox .box2 {
    float:right;
    width: 450px;
}

body#shop .shopinfobox .box1 .box_fb {
    margin:20px auto;
    width:450px;
}

body#shop table.t_shopinfo {
    border:8px solid #000;
    border-collapse: separate;
    border-spacing: 20px;
    width:100%;
}
body#shop table.t_shopinfo th {
    font-size:11px;
    padding:15px 15px 15px 50px;
    white-space: nowrap;
    text-align:center;
    background-repeat:no-repeat;
    background-position:10px center;
}
body#shop table.t_shopinfo tr.info_address th { background-image:url(../img/shop/ico_address.png); }
body#shop table.t_shopinfo tr.info_access th { background-image:url(../img/shop/ico_access.png); }
body#shop table.t_shopinfo tr.info_tel th { background-image:url(../img/shop/ico_tel.png); }
body#shop table.t_shopinfo tr.info_open th { background-image:url(../img/shop/ico_open.png); }
body#shop table.t_shopinfo tr.info_close th { background-image:url(../img/shop/ico_close.png); }
body#shop table.t_shopinfo tr.info_parking th { background-image:url(../img/shop/ico_parking.png); }
body#shop table.t_shopinfo tr.info_card th { background-image:url(../img/shop/ico_card.png); }

body#shop table.t_shopinfo td {
    padding:5px;
    position:relative;
}
body#shop table.t_shopinfo tr.info_address td span { display:block; }

body#shop table.t_shopinfo tr.info_address td p.btn_map {
    position:absolute;
    top:-40px;
    right:-20px;
}
body#shop table.t_shopinfo tr.info_address td p.btn_map a {
    background:url(../img/shop/btn_map.png) no-repeat;
    background-size:56px auto;
    display:block;
    width:56px;
    height:56px;
    text-indent:-99999px;
}

body#shop table.t_shopinfo tr.info_tel td {
    font-size: 24px;
    font-weight: bold;
}

/* 店内写真リスト */
body#shop ul.photolist {
    clear:both;
    overflow:hidden;
    margin:0 -1px 0 0;
    padding:50px 0;
}
body#shop ul.photolist li {
    float:left;
	margin: 0 1px 1px 0;
}
body#shop ul.photolist li a {
	display: block;
	width: 154px;
	height: 154px;
	overflow: hidden;
    position: static;/* bootstrapのfixedをリセット */
}
body#shop ul.photolist li a img {
    max-height: 280px;
    max-width: 280px;
    margin: -20px;
    /* ここで動く速度とか設定 */
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
body#shop:not(.smartdevice) ul.photolist li a:hover img {
    max-height: 300px;
    max-width: 300px;
    margin: -25px;
}

body#shop #map {
    margin: 0 0 50px 0;
}

/*店舗問合せボタン*/
p.btn_inquiry {
    margin-bottom:50px;
}
p.btn_inquiry a {
    background:url(../img/shop/btn_mail.png) no-repeat;
    position:relative;
    display: block;
    width: 930px;
    height: 120px;
    text-indent:-99999px;
    margin:0 auto;
}
p.btn_inquiry a:after {
    position:absolute;
    content:"";
    display: block;
    width: 149px;
    height: 152px;
    background:url(../img/shop/post.png) no-repeat;
    background-size:149px auto;
    top: -15px;
    left: 50px;
}
body#shop:not(.smartdevice) p.btn_inquiry a:hover:after {
    width: 170px;
    height: 173px;
    background-size:170px auto;
    transform: rotate(-10deg);
    top: -25px;
    left: 43px;
}

@media (max-width: 991px) {
    body#shop h3 {
        font-size:28px;
    }
    body#shop h3 span {
        font-size:14px;
    }

    body#shop h4 {
        font-size:28px;
    }

    body#shop .shopinfobox .box1 {
        float:none;
        width: 100%;
    }
    body#shop .shopinfobox .box2 {
        float:none;
        width: 100%;
    }
    
    body#shop .shopinfobox .box1 .box_fb {
        width:500px;
    }
    
    body#shop table.t_shopinfo {
        border-spacing: 10px;
    }
    body#shop table.t_shopinfo th {
        padding:15px 10px 15px 50px;
        background-position:10px center;
    }
    
    body#shop table.t_shopinfo td {
        padding:3px;
        position:relative;
    }

    /* 店内写真リスト */
    body#shop ul.photolist {
        margin:0 -2px 0 0;
    }
    body#shop ul.photolist li {
        margin: 0 2px 2px 0;
    }
    body#shop ul.photolist li a {
        width: 140px;
        height: 140px;
    }

    /*店舗問合せボタン*/
    p.btn_inquiry a {
        width: 708px;
        height: 91px;
        background-size:708px auto;
    }
    p.btn_inquiry a:after {
        width: 130px;
        height: 133px;
        background-size:130px auto;
        top: -20px;
        left: 20px;
    }
    body#shop:not(.smartdevice) p.btn_inquiry a:hover:after {
        width: 150px;
        height: 153px;
        background-size:150px auto;
        top: -40px;
        left: 25px;
    }
}
@media (max-width: 767px) {
    /*店舗一覧へボタン*/
    p.btn_inquiry {
        margin-bottom:70px;
    }
    body#shop p.btn_shoplist.bottom {
        margin-bottom:30px;
    }
    body#shop p.btn_shoplist a {
        width:80px;
        height:48px;
        background-size:80px auto;
        top:-86px;
    }
    body#shop p.btn_shoplist.bottom a {
        top:-50px;
        right: 10px;
    }
    body#shop:not(.smartdevice) p.btn_shoplist a:hover {
        width:90px;
        height:52px;
        background-size:90px auto;
        top:-90px;
    }
    body#shop:not(.smartdevice) p.btn_shoplist.bottom a {
        top:-34px;
    }

    body#shop div.inner h3 {
        font-size:19px;
        line-height: 1.3;
        margin-top: 0;
        padding:0;
    }
    body#shop h3.fc {
        margin-top: 50px !important;
    }
    body#shop h3 span {
        font-size:13px;
        display:block;
    }

    body#shop h4 {
        font-size:25px;
        padding:10px 0;
    }

    body#shop .shopinfobox .box1 {
        float:none;
        width: 100%;
    }
    body#shop .shopinfobox .box2 {
        float:none;
        width: 100%;
    }

    body#shop .shopinfobox .box1 .box_fb {
        margin:20px auto;
        width:100%;
    }

    body#shop table.t_shopinfo {
        border-spacing: 10px;
        width:100%;
    }
    body#shop table.t_shopinfo th {
        position:absolute;
        font-size:11px;
        padding: 5px 0 5px 25px;
        background-position:0px center;
        background-size:20px auto;
        text-align:left;
    }

    body#shop table.t_shopinfo td {
        padding:24px 0 0 13px;
        line-height:1.2;
    }

    body#shop table.t_shopinfo tr.info_address td p.btn_map {
        top:-30px;
        right:-10px;
    }
    
    body#shop table.t_shopinfo tr.info_tel td {
        font-size: 24px;
    }

    /* 店内写真リスト */
    body#shop ul.photolist {
        padding:20px 0;
        text-align:center;
    }
    body#shop ul.photolist li {
        margin: -3px -2px;
        display:inline-block;
        float: none;
    }
    body#shop ul.photolist li a {
        height: 120px;
        width:auto;
    }
    body#shop ul.photolist li a {
        height: 120px;
        width:auto;
    }
    body#shop ul.photolist li a img {
        max-height: inherit;
        max-width: inherit;
        height:120px;
        width:auto;
        margin: 0;
    }

    body#shop #map {
        margin: 0 0 40px 0;
    }

    /*店舗問合せボタン*/
    p.btn_inquiry a {
        width: 320px;
        height: 45px;
        background-size: 320px auto;
    }
    p.btn_inquiry a:after {
        width: 70px;
        height: 72px;
        background-size:70px auto;
        top: -15px;
        left: -3px;
    }
    body#shop:not(.smartdevice) p.btn_inquiry a:hover:after {
        width: 80px;
        height: 83px;
        background-size:80px auto;
        top: -20px;
        left: -13px;
    }

}


/* ============================
  リアル店舗情報ページ
============================ */
body#ec ul.list_ec {
    text-align:center;
    padding:0;
}
body#ec ul.list_ec li {
    display:inline-block;
}
body#ec ul.list_ec li a {
    display:inline-block;
    background:#D61619 url(../img/ec/logo.png) center 10px no-repeat;
    color:#FFF;
    font-size:20px;
    text-decoration:none;
    padding:50px 10px 5px 10px;
    font-weight: bold;
    min-width: 160px;
    border-radius:3px;
    margin:5px;
}
body#ec:not(.smartdevice) ul.list_ec li a:hover {
    background-color:#EC0003;
}

body#ec .bullkun {
    margin-top:30px;
    overflow:hidden;
}
body#ec .bullkun>div {
    float:left;
    width:50%;
}
body#ec .bullkun h3 {
    font-weight: bold;
    color: #FFF;
    padding: 22px 0 18px 75px;
    background: url(../img/common/ico_kirakira.png) no-repeat;
    font-size:50px;
    text-shadow:
        -2px -1px #000,
        -1px -2px #000,
        -1px 0px #000,
        0px -1px #000,
        0px 1px #000,
        1px 0px #000,
        1px 2px #000,
        2px 1px #000,
        2px 3px #000,
        3px 2px #000,
        3px 4px #000,
        4px 3px #000,
        4px 5px #000,
        5px 4px #000;
    margin: 0 0 10px 0;
}
body#ec .bullkun h3>span {
    display:block;
    font-size:12px;
    text-shadow: none;
    color:#000;
    margin:0 0 5px 0;
}
body#ec .bullkun .tw {
    display: block;
    width: 420px;
    float: right;
    background: url(../img/ec/bullkun.png) top left no-repeat;
    padding: 0 0 0 130px;
    margin: 0;
    height: 183px;
}
body#ec .bullkun .tw a {
    display:block;
    /* background:url(../img/ec/twitter.png) top left no-repeat; */
    background:url("../img/ec/x.png") top left no-repeat;
    transition: 0;
    height:176px;
    width:300px;
    text-indent:-99999px;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}
body#ec:not(.smartdevice) .bullkun .tw a:hover {
    -webkit-filter: none;
    filter: none;
    background: url("../img/ec/x_hover.png") bottom no-repeat;
    transition: 0;
}


@media (max-width: 991px) {
    body#ec .bullkun>div {
        float:none;
        width:auto;
        margin-bottom:30px;
    }
    body#ec ul.list_ec li a {
        font-size: 18px;
        min-width: 125px;
    }
}
@media (max-width: 767px) {
    body#ec ul.list_ec li {
        display:block;
    }
    body#ec ul.list_ec li a {
        display:block;
        background-position: 10px center;
        padding:10px 10px 10px 120px;
        min-width: inherit;
        width: 280px;
    }
    body#ec .inner .bullkun h3 {
        padding: 5px 0 5px 50px;
        font-size:30px;
        margin: 0 0 10px 0;
    }
    body#ec .bullkun h3>span {
        font-size:10px;
    }
    body#ec .bullkun .tw {
        width: 100%;
        float: none;
        padding: 60px 0 0 120px;
        background-size: 110px auto;
        height: 155px;
    }
    body#ec .bullkun .tw a {
        height:176px;
        text-indent:0;
        background:none;
    }
}


/* ============================
  NEWSページ
============================ */
body#news .inner ul {
    padding:0 20px;
    margin-bottom: 50px;
}
body#news .inner ul li {
    border:8px solid #000;
    overflow:hidden;
    margin:0 0 20px 0;
    padding:20px;
}
body#news .inner ul li img {
    width:400px;
    float:left;
    margin:-20px 20px -20px -20px;
}
body#news .inner ul li dl {
    width: 100%;
    float: left;
    margin: 0;
}
body#news .inner ul li img+dl {
    width: 434px;
}
/* 不要? 20151225 無効
body#news .inner ul li dl h3 {
    margin: 0;
}*/
body#news .inner ul li dl dt {
    font-size: 16px;
}
body#news .inner ul li dl dd {
    margin: 0;
}
body#news .inner ul li dl dt+dd:not(.kikan)::before {
    content:"";
    background:#FCE4E5;
    display:block;
    height:17px;
    width:100%;
    margin:2px 0;
}
body#news .inner ul li dl dd.kikan {
    background:#FCE4E5;
    padding:1px 5px;
    font-size:11px;
    margin:2px 0;
    color:#B32B2B;
}

body#news .inner .imgbox {
    padding: 0!important;
    display: flex;
    flex-wrap: wrap;
}

/*img2列*/
body#news .inner .imgbox.item2>img {
    max-width: 437px;
}

body#news h3#sns,
body#news h3#holiday,
body#news h3#fukubukuro {
    margin-top:-30px;
    padding-top:100px;
    background-position-y: 78px;
}
body#news div.sns_info,
body#news div.holiday_info,
body#news div.fukubukuro_info,
body#news div.campaign_info {
    padding: 0;
    width: 890px;
}

body#news div.sns_info img {
    width: 100%;
    border-bottom: 8px solid #000;
}
body#news div.sns_info>div,
body#news div.fukubukuro_info>div {
    padding: 30px;
}
body#news div.sns_info>div dl {
    padding: 20px 40px 0;
}
body#news div.sns_info>div dl dt {
    font-size: 24px;
}
body#news div.sns_info>div dl dt:not(:first-of-type) {
    margin-top: 30px;
}
body#news div.sns_info>div dl dd a {
    background-image: url("../img/common/ico_link_tb.png");
    background-repeat: no-repeat;
    display: inline-block;
    height: 30px;
    padding-left: 35px;
    padding-top: 9px;
    word-break: break-word;
}
body#news div.sns_info>div dl dd a:hover,
body#news div.sns_info>div dl dd a:focus {
    background-image: url("../img/common/ico_link_tb_h.png");
}

@media (max-width: 991px) {
    body#news .inner ul li img {
        width:auto;
        max-width: 652px;
        float:none;
        margin:-20px 0 20px -20px;
    }
    body#news .inner ul li img+dl {
        width: 100%;
    }
    
    /*img2列*/
    body#news .inner .imgbox.item2>img {
        max-width: 652px;
    }
    
    body#news div.sns_info,
    body#news div.holiday_info,
    body#news div.fukubukuro_info,
    body#news div.campaign_info {
        width: 668px;
    }
    body#news div.sns_info>img,
    body#news div.holiday_info>img,
    body#news div.fukubukuro_info>img,
    body#news div.campaign_info>img {
        max-width: 652px;
    }
}
@media (max-width: 767px) {
    body#news .inner ul {
        padding: 0;
    }
    body#news .inner ul li {
        padding:10px;
    }
    body#news .inner ul li img {
        width:100%;
        margin:0 0 10px 0;
    }
    /* 不要? 20151225 無効
    body#news .inner ul li dl h3 {
        font-size:18px;
    }
    */
    body#news .inner ul li dl dd {
        line-height:1.2;
    }
    body#news .inner ul li dl dd.kikan {
        margin:5px 0;
    }
    
    /*img2列*/
    body#news .inner .imgbox.item2>img {
        max-width: 695px;
        width: 100%;
    }
    
    body#news div.sns_info,
    body#news div.holiday_info,
    body#news div.fukubukuro_info,
    body#news div.campaign_info {
        width: 100%;
    }
    body#news div.sns_info>img,
    body#news div.holiday_info>img,
    body#news div.fukubukuro_info>img,
    body#news div.campaign_info>img {
        width:100%;
    }
    body#news h3#sns,
    body#news h3#holiday,
    body#news h3#fukubukuro {
        margin-top: -40px;
        padding-top: 90px;
    }
    
    body#news div.sns_info>div dl {
        padding: 20px 10px 0;
    }
    body#news div.sns_info>div dl dt {
        font-size: 20px;
    }
}


/* ============================
  採用情報ページ
============================ */
body#recruit .inner {
    background:url(../img/recruit/bg_staff.png?date=20180613) no-repeat 0 70px;
}
body#recruit .inner>div {
    text-align:center;
}
body#recruit .inner>div h3 {
    background:url(../img/recruit/team.png) no-repeat center;
    text-indent:-99999px;
    min-height: 110px;
    margin: 0 0 15px 0;
}
body#recruit .inner table {
    border:8px solid #000;
    margin:20px auto 50px;
    border-collapse: separate;
    border-spacing: 5px;
    background: #FFF;
}
body#recruit .inner table th {
    padding:5px;
    background:#E1E1E1;
    text-align:center;
}
body#recruit .inner table td {
    padding:5px;
}

body#recruit .inner dl.rec_msg {
    padding: 80px 30px 80px 90px;
    position:relative;
    background:#AF0102 url(../img/recruit/bg_msg.jpg) no-repeat;
    color:#FFF;
    margin:0 0 50px 0;
    border-radius:100px;
}
body#recruit .inner dl.rec_msg dt {
    background:url(../img/recruit/staff.png?date=20250602) no-repeat;
    padding:0 0 0 290px;
    position:absolute;
    height:400px;
    top:80px;
    left:10px;
    font-size:24px;
    text-shadow: 1px 1px 3px #000;
}
body#recruit .inner dl.rec_msg dd {
    padding:50px 0 0 210px;
    font-size: 12px;
    text-shadow: 1px 1px 3px #000;
}

/* 応募ボタン */
p.btn_entry {
    margin-bottom:50px;
}
p.btn_entry a {
    background:url(../img/recruit/btn_entry.png) no-repeat;
    position:relative;
    display: block;
    width: 930px;
    height: 120px;
    text-indent:-99999px;
}
p.btn_entry a:after {
    position:absolute;
    content:"";
    display: block;
    width: 250px;
    height: 205px;
    background:url(../img/recruit/sheet.png) no-repeat;
    background-size:250px auto;
    top: -40px;
    left: 80px;
}
body#recruit:not(.smartdevice) p.btn_entry a:hover:after {
    width: 297px;
    height: 244px;
    background-size:297px auto;
    transform: rotate(-10deg);
    top: -60px;
    left: 30px;
}

@media (max-width: 991px) {
    body#recruit .inner {
        background-size: 740px auto;
        background-position:center 10px;
    }
    body#recruit .inner>div h3 {
        min-height: 100px;
        background-size:360px auto;
    }
    body#recruit .inner>div>p {
        font-size:12px;
        letter-spacing:0;
    }

    body#recruit .inner dl.rec_msg {
        padding:30px;
        border-radius:40px;
    }
    body#recruit .inner dl.rec_msg dt {
        padding:0 0 0 150px;
        position:absolute;
        height:360px;
        top:40px;
        left:20px;
        background-size:150px auto;
        background-position:left center;
    }
    body#recruit .inner dl.rec_msg dd {
        padding:50px 0 0 140px;
        font-size: 11px;
    }

    /* 応募ボタン */
    p.btn_entry a {
        background:url(../img/recruit/btn_entry_sp.png) no-repeat;
        width: 708px;
        height: 160px;
    }
    p.btn_entry a:after {
        display:none;
    }
}
@media (max-width: 767px) {
    body#recruit .inner {
        background: none;
        position:relative;
    }
    body#recruit .inner:before {
        content: "";
        display: block;
        width: 100px;
        height: 200px;
        background: url(../img/recruit/bg_staff.png) no-repeat top right;
        position: absolute;
        background-size: auto 200px;
        top: 90px;
        right: 0;
    }
    body#recruit .inner>div h3 {
        background-size:320px auto;
    }
    body#recruit .inner>div>p {
        font-size: 12px;
        letter-spacing: 0;
        text-align: left;
        margin-right: 80px;
        margin-left: 10px;
    }
    body#recruit .inner table th {
        white-space:nowrap;
        font-size:11px;
    }
    
    body#recruit .inner dl.rec_msg {
        padding:15px;
        border-radius:15px;
    }
    body#recruit .inner dl.rec_msg dt {
        padding: 20px 0 20px 95px;
        position: initial;
        height: auto;
        background-size: 100px auto;
        background-position: left top;
        font-size: 18px;
        margin-bottom:10px;
    }
    body#recruit .inner dl.rec_msg dd {
        padding:0;
        font-size: 11px;
        line-height:1.2;
    }

    /* 応募ボタン */
    p.btn_entry {
        margin-bottom:0;
    }
    p.btn_entry a {
        width: 100%;
        background-size:100%;
        max-width:708px;
    }
}


/* ============================
  メールフォーム
============================ */
.inner.mailform .row {
    background:#D8D8D8;
    padding:50px 0;
    margin: 30px 0;
}

body#inquiry .inner.mailform h3 {
    text-align:center;
    font-size:24px;
    font-weight: bold;
    color:#FFF;
    text-shadow:
    -1px 0px #000,
    0px -1px #000,
    0px 1px #000,
    1px 0px #000,
    1px 2px #000,
    2px 1px #000,
    2px 3px #000,
    3px 2px #000,
    3px 4px #000,
    4px 3px #000,
    4px 5px #000,
    5px 4px #000;
    margin:0 0 30px 0;
    letter-spacing: 0;
    padding: 0;
    line-height: 1.3;
}
.inner.mailform h3 span {
    font-size:18px;
    display:block;
}
.inner.mailform h3 strong {
    color:#FFCC00;
}

.inner.mailform table {
    background:#FFF;
}
.inner.mailform table th,
.inner.mailform table td {
    border: 1px solid #888888;
    padding:20px;
}
.inner.mailform table th {
    width: 32%;
}
.inner.mailform .text-danger {
    font-size: 120%;
    font-weight: bold;
    color: #D61619;
    vertical-align: top;
    padding: 2px 0;
}
.inner.mailform p.text-danger {
    margin: 0;
}

.inner.mailform dl {
    margin:-12px 0 0 0;
}
.inner.mailform dl dt {
    padding: 15px 0 3px 0;
}

.inner.mailform ul.btnList {
    text-align: center;
    padding: 0;
}
.inner.mailform ul.btnList li {
    display: inline-block;
}
.inner.mailform ul.btnList a {
    padding: 25px;
    font-size: 22px;
    border-radius: 15px;
    text-decoration: none;
    background-color:#D61619;
    border:2px solid #D61619;
    color:#FFF;
    width:200px;
}
body:not(.smartdevice) .inner.mailform ul.btnList a:hover {
    letter-spacing:8px;
    background-color:#3FA60C;
    border:2px solid #3FA60C;
    padding: 25px 20px 25px 30px;
}

.inner #tel_fax {
    border:8px solid #000;
    padding:20px;
    margin: 100px 200px 0 200px;
    text-align: center;
}
.inner #tel_fax p.text {
    padding:5px;
    background:#000;
    margin:0 0 10px 0;
    color:#FFF;
}
.inner #tel_fax p>span {
    display:block;
    font-size:22px;
    font-weight: bold;
    color:#FFF;
    text-shadow:
    -1px 0px #000,
    0px -1px #000,
    0px 1px #000,
    1px 0px #000,
    1px 2px #000,
    2px 1px #000,
    2px 3px #000,
    3px 2px #000,
    3px 4px #000,
    4px 3px #000,
    4px 5px #000,
    5px 4px #000;
    margin:0 0 3px 0;
    letter-spacing:0;
}
.inner #tel_fax ul {
    padding:10px;
    font-weight:bold;
    font-size:18px;
}

body#inquiry ul.linkList {
    text-align: center;
    padding   : 0;
    margin-top: 30px;
}


@media (max-width: 991px) {
    .inner.mailform .row { padding:20px 0; }

    .inner #tel_fax { margin: 100px 50px 0 50px; }
}
@media (max-width: 767px) {
    .inner.mailform .row { background:none; }
    .inner.mailform .row .inquiry { padding:0; }
    
    .inner.mailform h3 {
        font-size:22px;
        text-shadow:
        -1px 0px #000,
        0px -1px #000,
        0px 1px #000,
        1px 0px #000,
        1px 2px #000,
        2px 1px #000,
        2px 3px #000,
        3px 2px #000,
        3px 4px #000,
        4px 3px #000;
        margin:0 0 15px 0;
    }
    .inner.mailform h3 span {
        font-size:14px;
    }

    .inner.mailform table th,
    .inner.mailform table td {
        padding:8px 5px;
    }
    .inner.mailform table th {
        font-size:11px;
        width: 32%;
    }
    
    .inner #tel_fax {
        margin: 50px 0 0 0;
        padding:15px;
    }
}


/* ============================
  会社概要
============================ */
#company dl.felixbox {
	background: url(../img/common/felix_logo.png) no-repeat 40px 35px;
    padding:50px 50px 50px 220px;
    margin:20px auto 40px;
    display:table;
    border:8px solid #000;
}
#company dl.felixbox dt {
    margin:0 0 10px 0;
}
#company dl.felixbox dd {
    line-height:2;
}

#company table.outline {
    margin:0 auto 30px auto;
}
#company table.outline tr {
    border-bottom:solid 1px #D61619;
}
#company table.outline tr:first-child {
    border-top:solid 1px #D61619;
}
#company table.outline th {
    padding:15px 80px;
    text-align:center;
}
#company table.outline td {
    padding:15px 40px;
}

@media (max-width: 991px) {
    #company table.outline th {
        padding: 0 10px;
    }
}
@media (max-width: 767px) {
    #company dl.felixbox {
        background-size    : 40px;
        padding            : 20px;
        margin             : 0 auto 20px auto;
        background-position: 20px 20px;
    }
    #company dl.felixbox dt {
        margin:0 0 25px 50px;
    }
    #company dl.felixbox dd {
        line-height:1.2;
    }
    #company dl.felixbox dd span {
        display:block;
    }
    #company dl.felixbox h3 {
        font-size: 16px;
    }
    #company div.box_br  {
        padding     : 30px 20px;
        margin-left : 10px;
        margin-right: 10px;
    }
    #company table.outline th {
        padding: 0 5px;
        white-space:nowrap;
        font-size:11px;
    }
    #company table.outline td {
        padding: 15px 15px;
    }
}


/* ============================
  プライバシーポリシー、ご利用規約ページ
============================ */
ol.policy {
    padding:50px;
}
ol.policy>li {
    margin:0 0 40px 0;
    list-style-type:none;
    list-style-position:inside;
    counter-increment: cnt;
}
ol.policy>li:before {
    font-size:16px;
    display: marker;
    content: "第" counter(cnt) "条　";
    font-weight:bold;
    color:#000;
}

ol.policy>li h3 {
    font-size:16px;
    font-weight:bold;
    display: inline-block;
    margin: 0 0 10px 0 ;
    color:#000;
}
ol.policy>li ul {
    margin: 10px 0;
}
ol.policy>li ul li {
    margin: 0 0 10px 0;
    list-style-type:disc;
}
ol.policy>li dl {
    margin:10px;
}
ol.policy>li dl dt {
    border:solid 1px #757368;
    padding: 5px 8px;
    display: inline-block;
    margin:10px 0 5px 0;
}
ol.policy>li dl dd {
    margin:0 0 5px 10px;
}


@media (max-width: 991px) {
}
@media (max-width: 767px) {
    ol.policy       { padding     : 20px 0 0; }
    ol.policy>li ul { padding-left: 25px;     }
    ol.policy>li ol { padding-left: 15px;     }
}



/* ============================
  リンク
============================ */
#link ul.linklist {
	margin: 0 -22px 0 0;
	padding: 0;
    overflow:hidden;
}
#link ul.linklist>li {
	float: left;
	width: 270px;
	margin: 0px 22px 22px 0;
	padding: 10px;
	border: #CCC 1px solid;
	font-size: inherit;
	min-height: 240px;/* display: list-item; */
}
#link ul.linklist>li:nth-of-type(3n+1) {
    clear:both;
}
#link ul.linklist li a.linkimg {
    position:relative;
    display:block;
}
#link ul.linklist li a.linkimg:after {
    content:"";
    position:absolute;
	display: block;
    border:1px solid #000;
    width:145px;
    height:45px;
    top:0;
    left:0;
}
#link ul.linklist li img {
	margin: 0 0 5px 0;
	display: block;
}
#link ul.linklist li p {
	margin: 0 0 5px 0;
}
#link ul.linklist li p.name {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 1px;
	margin: 0 0 5px 0;
	padding: 0;
}
#link ul.linklist li.tw,
#link ul.linklist li.fb {
	font-size: 12px;
	margin: 2px 0;
}
#link ul.linklist li.tw a,
#link ul.linklist li.fb a {
	padding: 2px 0 2px 20px;
	color: #06C;
}
#link ul.linklist li.tw a {
	/* background: url(../img/common/ico_twitter_16.png) 0 2px no-repeat; */
	background: url("../img/common/ico_x_16.png") 0 2px no-repeat;
}
#link ul.linklist li.fb a {
	background: url(../img/common/ico_facebook_16.png) 0 2px no-repeat;
}
#link ul.linklist ul.linksub {
    padding:2px 0;
}

#link ul.bloglist {
	margin: 0 -3px 10px 0;
    padding:0;
	overflow: hidden;
}
#link ul.bloglist li {
	float: left;
	padding: 0;
	margin: 0 3px 3px 0;
}
#link ul.bloglist li img {
    display:block;
	width: 145px;
}
#link ul.bloglist.mini li {
}
#link ul.bloglist.mini li img {
    display:block;
	width: 68px;
}

#link div.fb-page {
    width:500px;
    margin:0 auto;
    display: block;
    min-height: 300px;
}

@media (max-width: 991px) {
    #link iframe.facebook {
        width : 590px;
        height: 285px;
    }
    #link ul.linklist {
        margin: 0 auto;
        width: 580px;
    }
    #link ul.linklist>li      { margin: 10px; }
    #link ul.linklist>li:nth-of-type(3n+1) { clear:none; }
    #link ul.linklist>li:nth-of-type(2n+1) { clear:both; }
    
    #link ul.bloglist         {
        margin: 0 auto;
        width : 546px;
    }
    #link ul.bloglist li      { margin: 5px; }
    #link ul.bloglist.mini    {
        margin: 0 auto;
        width : 546px;
    }
    #link ul.bloglist.mini li { margin: 5px; }
}
@media (max-width: 767px) {
    #link iframe.facebook {
        width : 100%;
    }
    #link ul.linklist {
        margin: 0;
        width: 100%;
    }
    #link ul.linklist>li {
        float: none;
        width: initial;
        margin: 10px;
        min-height: inherit;
    }
    #link ul.bloglist { width: 100%; }
    #link ul.bloglist li { margin: 2px; }
    #link ul.bloglist.mini { width: 100%; }
    #link ul.bloglist.mini li { margin: 3px; }
    #link div.fb-page {
        width: initial;
        display: table;
    }
}


/* ============================
  404
============================ */

#fnf404 ul.links {
    margin:40px;
}
#fnf404 ul.links li {
    margin-bottom:5px;
}
#fnf404 ul.links li a {
    display:inline-block;
    background: url(../img/fnf/ico_bull.png) no-repeat;
    padding: 6px 0 15px 42px;
    margin-left: -30px;
    font-size: 16px;
}
dl.bull_kun {
    margin:-100px 0 0 360px;
    padding:20px 20px 20px 185px;
	background: url(../img/fnf/bull_ani.gif) no-repeat;
    min-height: 220px;
}
dl.bull_kun dt {
    display: block;
    padding: 25px 0 10px 0;
}
dl.bull_kun dt span {
    font-size:120%;
    font-weight:bold;
}
dl.bull_kun dd {
    position:relative;
	padding: 15px 35px;
	min-width: 115px;
	line-height: 30px;
	background: #FFF;
	border: 3px solid #D61619;
	z-index: 0;
    border-radius: 7px;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
}
dl.bull_kun dd:before {
	content: "";
	position: absolute;
	top: 50%; left: -14px;
	margin-top: -9px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 20px 9px 0;
	border-color: transparent #FFF transparent transparent;
	z-index: 0;
}
dl.bull_kun dd:after {
	content: "";
	position: absolute;
	top: 50%; left: -20px;
	margin-top: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 20px 10px 0;
	border-color: transparent #D61619 transparent transparent;
	z-index: -1;
}
dl.bull_kun dd a {
    display:block;
    font-size:18px;
    font-weight:bold;
}

@media (min-width: 768px) and (max-width: 991px) {
    dl.bull_kun {
        margin:0 0 0 155px;
    }
}
@media (max-width: 767px) {
    #fnf404 ul.links {
        margin:30px 20px;
    }
    dl.bull_kun {
        margin:0 0 0 0;
        background-size: 32%;
        padding: 0px 20px 20px 33%;
    }
    dl.bull_kun dd {
        padding: 6% 8%;
        line-height:1.5;
    }
}


/* ======================================
  イベント（FIDOカウントアップイベント）
====================================== */
body#event h3#info {
    text-align      : center;
    margin          : 0 0 30px;
    border-bottom   : 1px solid #000000;
    border-top      : 1px solid #000000;
    padding         : 10px;
    font-size       : 30px;
}
body#event p strong.center {
    display: block;
    text-align: center;
    font-size: 18px;
    margin-bottom: 20px;
}
body#event p strong.right {
    display: block;
    text-align: right;
    font-size: 14px;
    margin-top: 20px;
}
body#event p strong.right span {
    font-size: 12px;
    font-weight: normal;
}
body#event p img { margin: 10px 0; }

body#event a.view {
    text-decoration: none;
    display: block;
    margin: auto;
    width: 200px;
}

body#event table.rankTbl {
    width: 100%;
    margin-top: 60px;
}
body#event table.rankTbl caption {
    text-align: center;
    font-size: 24px;
}
body#event table.rankTbl tr th {
    background-color: #ccc;
    text-align: center;
    padding: 5px;
}
body#event table.rankTbl tr td {
    text-align: center;
    padding: 5px;
}
body#event table.rankTbl tr td.first  { background-color : gold; }
body#event table.rankTbl tr td.second { background-color: #c0c0c040; }
body#event table.rankTbl tr td.third  { background-color: bisque; }

body#event table.rankTbl tr td.tenth,
body#event table.rankTbl tr td.zoro,
body#event table.rankTbl tr td.hundred {
    background-color: rgba(214,22,25,0.5);
}

@media (max-width: 767px) {
    body#event p img {
        width: 100%;
        max-width: 350px;
    }
    body#event h3#info { font-size: 19px; }
    
    body#event p strong.center { font-size: 15px; }
    
    body#event p strong.right { margin-bottom: 20px; }
    
    body#event h4 {
        font-size: 14px;
        text-align: center;
    }
    body#event ul { padding-left: 0; }
}


/* ============================
  お支払い方法
============================ */
#payment ul.paymentlist {
	margin: 0 -22px 0 0;
	padding: 20px 0 0 0;
    overflow:hidden;
}
#payment ul.paymentlist>li {
	float: left;
	width: 270px;
	margin: 0px 22px 22px 0;
	padding: 10px;
	border: #CCC 1px solid;
	font-size: inherit;
}
#payment ul.paymentlist>li:nth-of-type(3n+1) {
    clear:both;
}
#payment ul.paymentlist li img {
	margin: 0 auto 5px;
	display: block;
}
#payment ul.paymentlist li h4 {
	margin: 0 0 10px 0;
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 1px;
    text-align: center;
}


@media (max-width: 991px) {
    #payment ul.paymentlist {
        margin: 0 auto;
        width: 580px;
    }
    #payment ul.paymentlist>li      { margin: 10px; }
    #payment ul.paymentlist>li:nth-of-type(3n+1) { clear:none; }
    #payment ul.paymentlist>li:nth-of-type(2n+1) { clear:both; }
}
@media (max-width: 767px) {
    #payment ul.paymentlist {
        margin: 0;
        width: 100%;
    	padding: 0;
    }
    #payment ul.paymentlist>li {
        float: none;
        width: initial;
        margin: 10px;
        min-height: inherit;
    }
}



