@charset "utf-8";
/* reset */
* { padding: 0; margin: 0; box-sizing: border-box; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
address, caption, cite, code, dfn, em, var { font-style: normal; font-weight: normal; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
q:before, q:after { content: ''; }
abbr, acronym { border: 0; }
section, article { display: block; }
/* base */
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { word-wrap : break-word; overflow-wrap : break-word; font-kerning: normal; -webkit-font-kerning: normal; font-size: 16px; font-family: Helvetica Neue, helvetica, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; text-align: center; letter-spacing: 0.03em; margin: 0px; box-sizing: border-box; background-color: #fff; color: #000; padding: 0em; line-height: 2em; }
img { vertical-align: bottom; height: auto; width: 100%; }
::selection { background: #333333; color: #FFF; }
::-moz-selection {
background: #333333;
}
/* link */
a:link, a:visited, a:active { color: #000; text-decoration: none; }
a:hover { color: #333333; text-decoration: none; opacity: 0.8; filter: alpha(opacity=80); -ms-filter: "alpha(opacity=80)"; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
a:hover img { opacity: 0.8; filter: alpha(opacity=80); -ms-filter: "alpha(opacity=80)"; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
/* clear */
.clear { clear: both; }
.cbox { zoom: 100%; }
.cbox:after { content: " "; clear: both; height: 0; display: block; visibility: hidden; }
/* youtube */
.youtube { position: relative; width: 100%; min-width: 1200px; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }
/* options */
.r { border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; }
.rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; text-orientation: upright; }
.pcbr { display: block; }
.spbr { display: none; }
.sp_close { display: inline-block; }
.pc_close { display: none; }
.sp_img { display: none; }
.sp_img2 { display: none; }
.sp_open { display: none; }
.title { text-align: left; font-size: 1.5em; font-weight: bold; margin-bottom: 1.2em; }
.title span { font-size: 0.6em; font-weight: bold; margin-left: 1em; }
.sub_title { text-align: justify; font-size: 1em; font-weight: bold; margin-bottom: 1em; }
.entry .sub_title { text-align: justify; font-size: 1em; font-weight: bold; margin-bottom: 1em; }
.text { font-size: 1em; line-height: 2.2em; margin-top: 1em; margin-bottom: 1em; text-align: justify; }
.entry .text { font-size: 1em; line-height: 2.2em; margin-top: 1em; margin-bottom: 1em; text-align: justify; }
.caption { font-size: 0.8em; line-height: 1.75em; margin-top: 2em; margin-bottom: 2em; }
.entry .caption { font-size: 0.8em; line-height: 1.75em; margin-top: 2em; margin-bottom: 2em; }
.entry .text3 { display: block; }
#category_title { font-size: 1.3em; font-weight: bold; margin-bottom: 1.5em; }
/* wrapper */
#wrapper { width: 70%; min-width: 1000px; margin-left: auto; margin-right: auto; margin-top: 2%; margin-bottom: 2%; text-align: justify; border: 6px solid #000; }
#sp_header { display: none; }
#pc_header { display: block; }
#sp_navi { display: none; }
#sp_topics { display: none; }
/* pc_header */
#pc_header #header_shop { white-space: nowrap; font-size: 1em; line-height: 1.5em; padding-right: 2%; padding-left: 2%; margin-right: auto; margin-left: auto; border-bottom-width: 6px; border-bottom-style: solid; border-bottom-color: #000;s }
#pc_header #header_shop ul { overflow: hidden; }
#pc_header #header_shop li { display: inline-block; width: 48.5%; padding-right: 1%; margin-right: 2%; border-right-width: 6px; border-right-style: solid; border-right-color: #000; }
#pc_header #header_shop li:nth-child(2) { padding-right: 0; margin-right: 0; border-right: none; }
#pc_header #header_shop li dl { padding-top: 0.5em; padding-bottom: 0.5em; }
#pc_header #header_shop li dt { font-weight: bold; display: inline-block; margin-right: 0.5em; }
#pc_header #header_shop li dt span { margin-left: 0.5em; }
#pc_header #header_shop li dd { font-size: 0.9em; display: inline-block; }
#pc_header #pc_topics { font-size: 1.3em; text-align: center; font-weight: bold; padding-top: 0.5em; padding-bottom: 0.5em; padding-right: 2%; padding-left: 2%; margin-right: auto; margin-left: auto; border-bottom-width: 6px; border-bottom-style: solid; border-bottom-color: #000; }
/* contents */
#contents { overflow: hidden; position: relative; padding-top: 4.5%; padding-bottom: 5%; padding-right: 6.5%; padding-left: 6.5%; }
/* top_contents */
#contents #top_main { border-bottom-width: 6px; border-bottom-style: solid; border-bottom-color: #000; padding-bottom: 6.5%; }
#contents #top_sub { border-bottom-width: 6px; border-bottom-style: solid; border-bottom-color: #000; padding-top: 6.5%; padding-bottom: 6.5%; }
#contents #top_sub h2 { font-size: 1.2em; font-weight: bold; margin-bottom: 1em; }
#contents #top_topics_list { float: left; width: 76%; padding-right: 6.5%; background-image: linear-gradient(to bottom, #000, #000 3px, transparent 2px, transparent 6px); background-size: 3px 8px; background-position: right; background-repeat: repeat-y; }
#contents #top_topics_list li { vertical-align: top; font-size: 1em; display: inline-block; width: 28%; margin-right: 7%; font-weight: normal; }
#contents #top_topics_list li:nth-child(3) { margin-right: 0; }
#contents #top_instagram { float: right; width: 18%; }
#contents #top_instagram li { font-size: 1em; font-weight: normal; }
#contents #top_instagram li dt { font-size: 0.85em; font-weight: bold; line-height: 1.7em; margin-top: 1em; margin-bottom: 1em; }
#contents #top_instagram li dd { font-size: 0.85em; font-weight: normal; line-height: 1.7em; margin-top: 1em; margin-bottom: 1em; }
#contents #top_instagram #fb { margin-top: 1.5em; font-size:1.1em; text-align:center; background-color:#fff; color:#000; border-top:3px solid #000; border-bottom:3px solid #000; padding-top:0.5em; padding-bottom:0.5em; padding-left:0.7em; padding-right:0.7em;  }
.fa.fa-facebook-official { margin-right:0.5em; }

#contents .topics_title { font-size: 0.85em; font-weight: bold; line-height: 1.7em; margin-top: 1em; margin-bottom: 0.5em; }
#contents .topics_caption { font-size: 0.85em; font-weight: normal; line-height: 1.7em; margin-top: 0.5em; margin-bottom: 1em; }
#contents .fa.fa-instagram { font-size: 1.05em; margin-right: 0.5em; }
#contents #top_sub2 { padding-top: 6.5%; padding-bottom: 6.5%; }
#contents #top_sub2 h2 { text-align: justify; font-size: 1.2em; font-weight: bold; margin-bottom: 1.2em; }
#contents #top_sub2 .top_shop { float: left; width: 50%; padding-right: 6%; background-image: linear-gradient(to bottom, #000, #000 3px, transparent 2px, transparent 6px); background-size: 3px 8px; background-position: right; background-repeat: repeat-y; }
#contents #top_sub2 .top_shop:nth-child(2) { width: 44%; float: right; padding-right: 0; background-image: none; }
#contents #top_sub2 .top_shop .shop_left { float: left; width: 50%; padding-right: 4%; }
#contents #top_sub2 .top_shop .shop_right { float: right; width: 46%; }
#contents .shop_title { font-size: 1em; text-align:left; font-weight: bold; line-height: 1.6em; margin-bottom: 1em; }
#contents .shop_caption { font-size: 0.8em; font-weight: normal; line-height: 1.7em; margin-top: 1em; margin-bottom: 1em; }
/* left */
#left { float: left; width: 76%; }
/* right */
#right { float: right; width: 16.5%; }
#right nav { display: block; }
#right nav #logo { width: 95%; margin-right: auto; margin-left: auto; margin-bottom: 3.5em; }
#right nav { display: block; }
#right nav .list { padding-top: 1.2em; border-top-width: 3px; border-top-style: solid; border-top-color: #000; margin-bottom: 100%; }
#right nav .list:nth-child(4) { margin-bottom: 0; }
#right nav .list li { float: right; width: 10.5%; margin-left: 18.5%; }
#right nav .list li:nth-child(4n) { margin-left: 0; }
#right #topics { margin-top: 4em; }
#right #topics h2 { text-align: justify; font-size: 1.2em; font-weight: bold; margin-bottom: 1.2em; }
#right #topics li { font-size: 1em; display: block; font-weight: normal; margin-bottom: 3em; }
/* entry */
.entry { clear: both; margin-bottom: 4em; }
.entry .text img { float: right; width: 50%; padding-left: 5%; padding-bottom: 3%; }
.entry .text2 img { float: left; width: 50%; padding-right: 5%; padding-bottom: 3%; }
.entry .text3 img { float: right; width: 50%; padding-left: 5%; padding-bottom: 3%; }
.entry h1 { font-weight: bold; font-size: 1.8em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 0.5em; }
.entry h2 { font-weight: bold; font-size: 1.5em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 0.5em; }
.entry h3 { font-weight: bold; font-size: 1.4em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 0.5em; }
.entry h4 { font-weight: bold; font-size: 1.3em; line-height: 1.4em; margin-bottom: 1em; margin-top: 1em; font-weight: bold; }
.entry h5 { font-weight: bold; font-size: 1.2em; line-height: 1.4em; margin-bottom: 1em; margin-top: 1em; font-weight: bold; }
.entry h6 { font-weight: bold; font-size: 1.1em; line-height: 1.4em; margin-bottom: 1em; margin-top: 1em; font-weight: bold; }
.entry p { font-size: 1em; line-height: 2em; margin-bottom: 1em; margin-top: 1em; text-align: justify; }
.entry strong { font-weight: bold; font-size: 1.1em; }
.entry blockquote { padding-right: 10%; padding-left: 10%; position: relative; margin-top: 6em; margin-bottom: 6em; }
.entry blockquote:before { content: "“"; position: absolute; left: 2%; top: 0em; font-size: 7em; }
.entry blockquote:after { content: "”"; position: absolute; right: 2%; bottom: -0.5em; font-size: 7em; }
.entry ul, .entrybody ol, .entrybody dl { margin-bottom: 4em; margin-top: 2em; }
.entry li { font-size: 1.4em; line-height: 1.6em; margin-top: 1em; }
.entry li:first-child { margin-top: 0px; }
.entry dt { font-weight: bold; margin-bottom: 0.5em; font-size: 1.2em; margin-top: 2em; }
.entry dt:first-child { margin-top: 0px; }
.entry ul li { padding-left: 1em; border-left-width: 1px; border-left-style: solid; border-left-color: #000000; }
.entry ol li { margin-left: 1.5em; list-style-position: outside; list-style-type: decimal; }
.entry img { margin-top: 1.5em; margin-bottom: 1.5em; }
.entry p img { margin-top: 1em; margin-bottom: 1em; }
.entry .date { font-size: 1.3em; padding-bottom: 0.15em; border-bottom-width: 1.5px; border-bottom-style: dashed; border-bottom-color: #000; }
.table { clear: both; margin-bottom: 4em; }
.table li { padding-left: 0.5em; padding-right: 0.5em; padding-top: 0.35em; border-top-width: 3px; border-top-style: solid; border-top-color: #000; }
.table li:last-child { border-bottom-width: 3px; border-bottom-style: solid; border-bottom-color: #000; }
.table dl { width: 45%; margin-right: 9%; display: inline-block; }
.table dl:nth-child(2) { margin-right: 0; }
.table dt { float: left; }
.table dd { float: right; }
/* contact */
#contents .contact { width: 100%; }
#contents .contact tr { border-top-style: solid; border-right-style: none; border-bottom-style: solid; border-left-style: none; border-bottom-width: 3px; border-top-width: 3px; border-bottom-color: #000; border-top-color: #000; }
#contents .contact tr:last-child { border: none; }
#contents .contact th { font-weight: bold; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; white-space: nowrap; }
#contents .contact td { padding-top: 1em; padding-bottom: 1em; }
#contents .contact td select { font-size: 1em; line-height: 1em; padding: 0.2em; }
#contents .contact td input[type="text"], #contents .contact td input[type="email"] { width: 100%; border-color: #e2e2e2; font-size: 1.1em; line-height: 1.5em; border-style: solid; border-width: 1px; padding-top: 0.5em; padding-right: 0.5em; padding-bottom: 0.5em; padding-left: 0.5em; }
#contents .contact td textarea { padding: 1em; width: 100%; font-size: 1.1em; line-height: 1.5em; border-style: solid; border-width: 1px; border-color: #e2e2e2; }
#contents .contact td input[type="submit"] { cursor: pointer; font-size: 1.1em; line-height: 1em; color: #FFF; background-color: #000; padding-top: 0.8em; padding-right: 3em; padding-bottom: 0.8em; padding-left: 3em; letter-spacing: 0.1em; border: 1px solid #333; }
#contents .contact td input[type="submit"]:hover { background-color: #FFF; color: #000; border: 1px solid #333; }
/* footer */
#footer { margin-top: 3em; font-size: 0.8em; }
#footer p { font-weight: bold; display: inline-block; }
#footer ul { display: inline-block; }
#footer ul li { display: inline-block; line-height: 1.2em; margin-left: 1.5em; }
/* banner */
#banner { position: absolute; width: 3em; top: 3em; right: -1px; }
/* holiday */
#holiday { color: #000; background-color: #fff; text-align: left; line-height: 1.8em; }
#holiday_sp { font-size: 10px; color: #FFF; background-color: #000; text-align: left; line-height: 2.4em; }

/* media screen */
/* 992px以上 */
@media (min-width: 780px) {
body { font-size: 12px; }
}

/* 1200px以上 */
@media (min-width: 1200px) {
body { font-size: 13px; }
}

/* 1300px以上 */
@media (min-width: 1300px) {
body { font-size: 14px; }
}

/* 1400px以上 */
@media (min-width: 1400px) {
body { font-size: 16px; }
}

/* 1600px以上 */
@media (min-width: 1600px) {
body { font-size: 16px; }
}
@media (max-width: 780px) {
body { font-size: 13px; }
.pcbr { display: none; }
.spbr { display: block; }
.sp_close { display: none; }
.sp_open { display: inline-block; }
.sp_open img { vertical-align: middle; }
.pc_close { display: inline-block; }
.title { text-align: justify; font-size: 1.4em; font-weight: bold; margin-bottom: 1.2em; }
.sub_title { text-align: justify; font-size: 1em; font-weight: bold; margin-bottom: 1em; }
.text { font-size: 1em; line-height: 2.2em; margin-top: 1em; margin-bottom: 1em; text-align: justify; }
.caption { font-size: 0.8em; line-height: 1.75em; margin-top: 2em; margin-bottom: 2em; }
.photo { margin-bottom: 2.5em; }
#wrapper { position: relative; width: 97%; min-width: 300px; margin-left: auto; margin-right: auto; margin-top: 3%; margin-bottom: 3%; text-align: justify; border-width: 5px; }
#pc_header { display: none; }
/* sp_header */
#sp_header { display: block; width: 100%; z-index: 999; }
#header_shop { display: block; color: #fff; background-color: #000; border-bottom: none; padding-top: 0.7em; padding-right: 0.2em; padding-bottom: 0.5em; padding-left: 0.7em; }
#header_shop { overflow: hidden; }
#header_shop a:link, a:visited, a:active { color: #fff; text-decoration: none; }
#header_shop li { float: left; width: 53%; white-space: normal; text-align: left; border-bottom: none; }
#header_shop li:nth-child(2) { float: right; width: 47%; padding-right: 0; border-right: none; }
#header_shop li dt { font-size: 1em; font-weight: bold; display: block; line-height: 1em; margin-right: 0; }
#header_shop li dd { font-size: 0.8em; line-height: 1em; display: inline-block; }
#header_shop li dd span { width: 1.3em; vertical-align: bottom; margin-right: 0.35em; }
#header_shop .fa.fa-phone-square { margin-right: 0.3em; font-size: 1.1em; }
#onlineshop { text-align: center; clear: both; font-weight: bold; padding: 0.7em; border-bottom: 3px solid #000; }
#onlineshop .fa.fa-shopping-cart { font-size: 1.4em; margin-right: 0.25em; }
#sp_topics { display: block; text-align: center; font-weight: bold; padding: 0.7em; border-bottom: 3px solid #000; }
#sp_topics .fa.fa-info-circle { font-size: 1.4em; margin-right: 0.25em; }
/* contents */
#contents { width: 88%; margin-left: auto; margin-right: auto; overflow: hidden; position: relative; padding-right: 0; padding-left: 0; }
/* sp_navi */
#contents #sp_navi { margin-bottom: 2em; position: relative; margin-right: auto; margin-left: auto; display: block; border-bottom-style: none; padding-top: 1em; padding-bottom: 2em; border-bottom-width: 3px; border-bottom-style: solid; border-bottom-color: #000; }
#contents #sp_navi #logo { float: right; width: 27%; margin-right: auto; margin-left: 0; }
#contents #sp_navi .list { float: left; width: 68%; margin-right: auto; margin-left: auto; border-top-style: none; padding-top: 0.2em; }
#contents #sp_navi .list li { vertical-align: top; float: right; width: 7.5%; margin-left: 7.75%; }
#contents #sp_navi .list li:last-child { margin-left: 0; }
#contents #sp_navi .sns { font-weight: bold; vertical-align: top; position: absolute; bottom: 1em; }
#contents #sp_navi .sns li { display: inline-block; }
#contents #sp_navi .fa.fa-facebook { font-size: 2em; margin-right: 0.55em; }
#contents #sp_navi .fa.fa-instagram { font-size: 2em; margin-right: 0.45em; }
#contents #sp_navi .sns a:link, a:visited, a:active { color: #000 !important; text-decoration: none; }
/* top_contents */
#contents #top_main { border-bottom-width: 3px; border-bottom-style: solid; border-bottom-color: #000; padding-bottom: 2em; margin-bottom: 3em; }
#contents #top_sub { border-bottom-width: 3px; border-bottom-style: solid; border-bottom-color: #000; padding-top: 0; padding-bottom: 0; }
#contents #top_sub h2 { text-align: justify; font-size: 1.2em; font-weight: bold; margin-bottom: 1.2em; }
#contents #top_topics_list { float: none; width: 95%; margin-right: auto; margin-left: auto; padding-right: 0; background-image: none; margin-bottom: 3em; }
#contents #top_topics_list li { vertical-align: top; font-size: 1em; display: inline-block; width: 100%; margin-right: auto; margin-left: auto; font-weight: normal; margin-bottom: 2em; }
#contents #top_topics_list li:nth-child(3) { margin-right: auto; margin-left: auto; margin-bottom: 0; }
#contents #top_instagram { float: none; width: 100%; background-color: #e9e9e9; padding-left: 8%; padding-right: 8%; padding-top: 7%; padding-bottom: 7%; margin-right: auto; margin-left: auto; margin-bottom: 3em; }
#contents #top_instagram li { font-size: 1em; font-weight: normal; }
#contents #top_instagram #fb {display:none; }

#contents .topics_title { font-size: 1em; font-weight: bold; line-height: 1.7em; margin-top: 1em; margin-bottom: 1em; }
#contents .topics_caption { font-size: 0.85em; font-weight: normal; line-height: 1.7em; margin-top: 1em; margin-bottom: 1em; }
#contents .fa.fa-instagram { font-size: 1.2em; margin-right: 0.5em; }
#contents #top_sub2 { padding-top: 3em; padding-bottom: 1em; }
#contents #top_sub2 h2 { font-size: 1.2em; font-weight: bold; margin-bottom: 1em; }
#contents #top_sub2 .top_shop { float: left; width: 100%; padding-right: 0; margin-bottom: 2em; background-image: none; }
#contents #top_sub2 .top_shop:nth-child(2) { width: 100%; float: none; padding-right: 0; background-image: none; }
#contents #top_sub2 .top_shop .shop_left { float: none; width: 100%; padding-right: 0; margin-right: auto; margin-left: auto; }
#contents #top_sub2 .top_shop .shop_left img { width: 80%; margin-right: auto; margin-left: auto; display: block; margin-top: 2em; margin-bottom: 2em; }
#contents #top_sub2 .top_shop .shop_right { float: none; width: 100%; margin-right: auto; margin-left: auto; }
#contents .shop_title { font-size: 1em; font-weight: normal; line-height: 1.6em; margin-bottom: 1em; }
#contents .shop_caption { font-size: 1em; font-weight: normal; line-height: 1.7em; margin-top: 1em; margin-bottom: 1em; }
/* left */
#left { float: none; width: 100%; }
/* right */
#right { float: none; width: 100%; }
#right nav { display: none; }
/* entry */
.entry { clear: both; margin-bottom: 4em; text-align: left; }
.table { clear: both; margin-bottom: 4em; }
.table li { padding-left: 0.5em; padding-right: 0.5em; padding-top: 0.35em; border-top-width: 3px; border-top-style: solid; border-top-color: #000; }
.table li:last-child { border-bottom-width: 2px; border-bottom-style: solid; border-bottom-color: #000; }
.table dl { width: 100%; margin-right: 0; display: inline-block; }
.table dl:nth-child(2) { margin-right: 0; }
.table dt { float: left; }
.table dd { float: right; }
.entry .text img { float: none; width: 100%; padding-left: 0; padding-bottom: 0; margin-bottom: 2em; }
.entry .text2 img { float: right; width: 100%; padding-right: 0; padding-bottom: 0; margin-bottom: 2em; }
.entry .text3 { display: none; }
.sp_img { display: block; width: 100%; margin-right: auto; margin-left: auto; }
.sp_img2 { display: block; width: 100%; margin-right: auto; margin-left: auto; }
.sp_img2 img { float: left; width: 50%; padding-right: 0; padding-bottom: 0; margin-bottom: 2em; }
/* contact */
#contents .contact { width: 100%; }
#contents .contact th { display: block; font-weight: bold; padding-top: 0.5em; padding-right: 1em; padding-bottom: 0.5em; white-space: nowrap; }
#contents .contact td { display: block; padding-top: 0; padding-bottom: 1em; }
#contents .contact td input[type="submit"] { cursor: pointer; font-size: 1.1em; text-align: center; width: 80%; display: block; margin-left: auto; margin-right: auto; line-height: 1em; color: #FFF; background-color: #000; padding-top: 0.8em; padding-right: 3em; padding-bottom: 0.8em; padding-left: 3em; letter-spacing: 0.1em; border: 1px solid #333; }
#contents .contact td input[type="submit"]:hover { background-color: #FFF; color: #000; border: 1px solid #333; }
/* footer */
#footer { margin-top: 2em; font-size: 0.7em; text-align: center; padding-top: 1.5em; border-top-width: 3px; border-top-style: solid; border-top-color: #000; }
#footer ul li { display: inline-block; margin-left: 0em; margin-right: 1em; }
/* banner */
#banner { display: none; }
}
