@charset "UTF-8";
/*---------------------------------------------------------------------------------------- */
/* reset */
/*---------------------------------------------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0; padding:0;
    border:0; outline:0;
    font-size:100%; font-weight: inherit;;
    vertical-align:bottom;
    background:transparent;
}

body { line-height:1;}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { display:block;}

nav ul { list-style:none;}
li { list-style: none;}
blockquote, q { quotes:none;}

blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none;}

a {
    margin:0; padding:0;
    font-size:100%; vertical-align:baseline; background:transparent;
}

/* change colours to suit your needs */
ins { background-color:#ff9; color:#000; text-decoration:none;}

/* change colours to suit your needs */
mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold;}

del { text-decoration: line-through;}

abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help;}

table { border-collapse:collapse; border-spacing:0;}

/* change border colour to suit your needs */
hr {
    display:block; height:1px; border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0; padding:0;
}

input, select { vertical-align:middle;}

/* .clearfix */
.clear{ clear:both;}
.clearfix:after {
    content: ".";  display: block; 
    height: 0;  clear: both; 
    visibility: hidden; font-size: 0.1em;
}

.clearfix { display: inline-block;}
* html .clearfix { height: 1%; }
.clearfix { display: block; }

*, *:before, *:after {
  box-sizing: border-box;
}
/*---------------------------------------------------------------------------------------- */
/* end-reset */
/*---------------------------------------------------------------------------------------- */

body {
	color: #000;
	background-color: #FFF;
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-size: 18px;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
    animation: bodyfadeIn 4s ease 0s 1 normal;
    -webkit-animation: bodyfadeIn 4s ease 0s 1 normal;
	font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
	body {font-size: 16px;}
}

@keyframes bodyfadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes bodyfadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

a { color: #0F0F0F; text-decoration: none;
	-webkit-transition: 0.25s;
    -moz-transition: 0.25s;
    -o-transition: 0.25s;
    -ms-transition: 0.25s;
    transition: 0.25s;
}
a:hover { color: #333;}
a:focus, a:hover {}
a:focus img, a:hover img { opacity: 0.8;}

@media screen and (min-width: 992px) {
	.br-pc { display:block; }
	.br-sp { display:none; }
	.br-tb { display:none; }
	.only-pc { display:block; }
	.only-tab { display:none; }
	.only-sp { display:none; }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
	.br-pc  { display:none; }
	.br-sp { display:none; }
	.br-tb { display:block; }
	.only-pc  { display:none; }
	.only-tab { display:block; }
	.only-sp { display:none; }
}
@media screen and (max-width: 767px) {
	.br-pc { display:none; }
	.br-sp { display:block; }
	.br-tb { display:none; }
	.only-pc { display:none; }
	.only-tab { display:none; }
	.only-sp { display:block; }
}

/*==================================
    common
==================================*/
.img img { max-width: 100%;}
@media screen and (min-width: 992px) {
/*（ここにPC用スタイルを記述）*/
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
/*（ここにタブレット用スタイルを記述）*/
}
@media screen and (max-width: 767px) {
/*（ここにモバイル用スタイルを記述）*/
}

.wrap {
	padding-bottom: 98px;
/*
	background-image:
    radial-gradient(#D6D6D6 20%, rgba(255,255,255,0) 20%),
    radial-gradient(#D6D6D6 35%, rgba(255,255,255,0) 35%);
	background-color: #C8C8C8;
*/
	background-size: 40px 40px;
	background-position: 0 0, 20px 20px;
}
.frame { max-width: 600px; margin: 0 auto;}
.main { background-color: #08108c;}
.main .img img { width: 100%;}
@media screen and (max-width: 767px) {
	.wrap { padding-bottom: 60px;}
}

.shop {
	background-color: #FFFFFF;
	padding: 1.5em;
}
.shop_detail { background-color: #F7DAD6; border-radius: 30px; padding: 2em 0 1em;}
.shop_detail .img {}
.shop_detail .map { text-align: center; margin-top: 1rem; padding: 0.5em 1.5em;}
.shop_detail .map .gmap { position: relative; padding-bottom: 70%; height: 0; overflow: hidden; border: 3px solid #000;}
.shop_detail .map .gmap iframe, .ggmap object, .ggmap embed {
	position: absolute; top: 0; left: 0;
	width: 100%; height: 100%;
}
@media screen and (max-width: 767px) {
	.shop_detail .map {padding: 0.5em;}
}

.manage { margin-top: 1em; text-align: right;}
.manage p { font-size: 0.75em; background-color: #FFF; padding: 7px; text-align: center;}
.foot { background-color: #D9053A; padding: 0.75em 0; position: fixed; bottom: 0; left: 0; width: 100%;}
.foot .foot_btn { text-align: center;}
.foot .foot_btn li { display: inline-block; width: 48%; margin: 0 auto;}
.foot .foot_btn img { width: 100%;}
