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

html { line-height: 1; }

ol, ul { list-style: none; }

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

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/** * mixin report($caption-pos:left, $top-pos:0) @param (caption-pos) caption位置 省略可 default値はleft @param (top-pos) captionのtop位置 省略可 default値は0px */
body { -webkit-text-size-adjust: 100%; color: #000; font-family: Arial, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3' , Meiryo, 'メイリオ', 'MS PGothic', sans-serif; background-color: #fff; font-size: 12px; font-size: 0.75rem; line-height: 1.61; letter-spacing: 0.1em; }
@media only screen and (max-width: 480px) { body { letter-spacing: 0em; } }

a { text-decoration: underline; color: #000; }
a:active, a:hover { color: #d3d3d3; }

#pageTop { position: fixed; width: 140px; height: 30px; border: #ccc 1px solid; background-color: #fff; background-image: url(/mail/newsletter/common/images/btn-top.png); background-repeat: no-repeat; background-position: 0 0; background-size: 140px 30px; z-index: 150; display: none; text-indent: -119988px; overflow: hidden; text-align: left; text-transform: capitalize; right: 1%; bottom: 46px; }

#pageTop a { display: block; width: 140px; height: 30px; }

.hide-text { text-indent: -119988px; overflow: hidden; text-align: left; text-transform: capitalize; }

footer { background-color: #000; text-align: center; letter-spacing: 0; font-size: 12px; font-size: 0.75rem; padding: 7px 0; width: 100%; color: #fff; }

.sp { display: none; }

@media only screen and (max-width: 720px) { .tab { display: none !important; }
  .sp { display: inherit; } }
@media only screen and (max-width: 480px) { .pc { display: none !important; }
  .sp { display: inherit; } }
header { width: 100%; padding: 0; margin: 0; background-color: #040b12; position: relative; overflow: hidden; }
@media only screen and (max-width: 720px) { header { margin: 0; } }
header h1 { margin: 20px auto 20px; max-width: 180px; }
header h1 img { width: 100%; }
@media only screen and (max-width: 480px) { header h1 { margin: 10px auto 7px; max-width: 80px; }
  header h1 img { width: 100%; } }
header .mainVisual { z-index: 0; width: 100%; padding: 0; line-height: 0; position: relative; height: 630px; background: #040b12 url("../images/main.jpg") top center scroll no-repeat; }
@media only screen and (max-width: 480px) { header .mainVisual { -webkit-background-size: 100%; background-size: 100%; height: 200px; } }

.wrapper { background-color: #f2f2f2; }

.wrapperArticle { width: 100%; background-color: #fff; }

.article { margin: 0 auto 0; max-width: 720px; background-color: #fff; }
.article p { font-size: 12px; font-size: 0.75rem; padding: 0 50px; }
@media only screen and (max-width: 720px) { .article p { padding: 0 20px; } }
.article p:first-child { padding-top: 50px; padding-bottom: 50px; }
@media only screen and (max-width: 720px) { .article p:first-child { padding-top: 20px; padding-bottom: 30px; } }
.article p.closing { padding-bottom: 70px; }
@media only screen and (max-width: 720px) { .article p.closing { padding-bottom: 30px; } }
.article .feature { overflow: hidden; position: relative; letter-spacing: 0.1em; }
@media only screen and (max-width: 720px) { .article .feature { margin-bottom: 10px; } }
.article .feature p { position: relative; margin-top: 30px; float: right; width: 280px; padding-right: 50px; padding-left: 0; }
.article .feature p h2 { font-weight: bold; margin: 10px 0; }
.article .feature p h2.point:before { content: ''; background: url("../images/ico-point.png") 0 0 no-repeat; height: 18px; width: 25px; display: inline-block; position: relative; top: 4px; }
@media only screen and (max-width: 720px) { .article .feature p h2 { margin: 20px 0 0; } }
@media only screen and (max-width: 720px) { .article .feature p { padding: 0 10px; float: none; display: block; top: 0; max-width: 450px; width: auto; min-height: 100px; margin: 10px auto; height: auto; font-size: 12px; font-size: 0.75rem; }
  .article .feature p p { margin-bottom: 0; } }
.article .feature figure { float: left; max-width: 300px; margin-left: 50px; }
.article .feature figure img { max-width: 100%; float: right; }
@media only screen and (max-width: 720px) { .article .feature figure { float: none; display: block; max-width: 240px; margin: 0 auto; line-height: 0; }
  .article .feature figure img { float: none; width: 100%; height: auto; } }
@media only screen and (max-width: 720px) { .article .feature { max-width: 720px; } }
.article .shopinfo { padding: 50px 0 70px; overflow: hidden; position: relative; letter-spacing: 0.1em; }
@media only screen and (max-width: 720px) { .article .shopinfo { margin-bottom: 10px; } }
.article .shopinfo p { position: relative; margin-top: 120px; float: left; width: 280px; padding-left: 50px; padding-right: 0; }
.article .shopinfo p h2 { font-weight: bold; margin: 10px 0; }
.article .shopinfo p h2.point:before { content: ''; background: url("../images/ico-point.png") 0 0 no-repeat; height: 18px; width: 25px; display: inline-block; position: relative; top: 4px; }
@media only screen and (max-width: 720px) { .article .shopinfo p h2 { margin: 20px 0 0; } }
@media only screen and (max-width: 720px) { .article .shopinfo p { padding: 0 10px; float: none; display: block; top: 0; max-width: 450px; width: auto; min-height: 100px; margin: 10px auto; height: auto; font-size: 12px; font-size: 0.75rem; }
  .article .shopinfo p p { margin-bottom: 0; } }
.article .shopinfo figure { float: right; max-width: 300px; margin-right: 50px; }
.article .shopinfo figure img { max-width: 100%; }
@media only screen and (max-width: 720px) { .article .shopinfo figure { float: none; display: block; max-width: 240px; margin: 0 auto; line-height: 0; }
  .article .shopinfo figure img { float: none; width: 100%; height: auto; } }
@media only screen and (max-width: 720px) { .article .shopinfo { max-width: 720px; padding: 30px 0; } }

#shopWrapper { width: 100%; overflow: hidden; }
#shopWrapper h1 { margin: 70px auto 50px; max-width: 150px; }
#shopWrapper h1 img { width: 100%; }
@media only screen and (max-width: 720px) { #shopWrapper h1 { margin: 30px auto 10px; max-width: 130px; } }
#shopWrapper .shopArea { background-color: #fff; max-width: 760px; margin: 0 auto; padding-top: 30px; }
@media only screen and (max-width: 480px) { #shopWrapper .shopArea { width: 300px; padding-top: 10px; } }
#shopWrapper .shoplist { overflow: hidden; max-width: 720px; margin: 0 auto 60px; font-size: 12px; font-size: 0.75rem; line-height: 1.61; letter-spacing: 0.1em; }
@media only screen and (max-width: 480px) { #shopWrapper .shoplist { margin: 10px auto 30px; width: 300px; } }
#shopWrapper .shoplist h3 img { width: 100%; }
#shopWrapper .shoplist h3.shopEA7 { margin: 0 auto 20px; max-width: 78px; }
@media only screen and (max-width: 720px) { #shopWrapper .shoplist h3.shopEA7 { margin: 0 auto 10px; max-width: 55px; } }
#shopWrapper .shoplist h3.shopEA { margin: 0 auto 20px; max-width: 255px; }
@media only screen and (max-width: 720px) { #shopWrapper .shoplist h3.shopEA { margin: 0 auto 10px; max-width: 191px; } }
#shopWrapper .shoplist h3.shopAJr { margin: 0 auto 20px; max-width: 105px; }
@media only screen and (max-width: 720px) { #shopWrapper .shoplist h3.shopAJr { margin: 0 auto 10px; max-width: 78px; } }
#shopWrapper .shoplist div { width: 25%; float: left; height: 70px; min-width: 150px; display: inline-block; }
#shopWrapper .shoplist div dt, #shopWrapper .shoplist div dd { margin-left: 10px; }
#shopWrapper .shoplist a { color: #323232; }

.humanImage { background-color: #040b12; position: relative; width: 100%; line-height: 0; }
.humanImage figure { margin: 0 auto 0; max-width: 720px; }
.humanImage figure img { width: 100%; }

.closing { margin: 0 auto 0; max-width: 720px; background-color: #fff; }
.closing p { padding: 70px 50px; }
@media only screen and (max-width: 720px) { .closing p { padding: 30px 20px; } }

/* Nav Style */
nav { width: 100%; background-color: #e9e9e9; height: 40px; overflow: hidden; }
nav #navWrapper { max-width: 720px; margin: 0 auto; float: right; }
nav #navWrapper li { float: left; }
nav #navWrapper li.newsletterTop { margin-right: 27px; }

/* responsive */
@media only screen and (max-width: 720px) { nav { height: 30px; }
  nav #navWrapper { float: right; }
  nav #navWrapper li.newsletterTop { margin: 0; }
  nav #navWrapper li.newsletterTop img { width: 155px; height: 30px; }
  nav #navWrapper li.backnumber img { width: 120px; height: 30px; } }
@media only screen and (max-width: 480px) { nav #navWrapper { width: 100%; }
  nav #navWrapper li.newsletterTop { margin: 0; float: left; }
  nav #navWrapper li.backnumber { float: right; } }
/* Add Footer Style */
footer a { color: #fff; text-decoration: underline; }
footer a:active, footer a:hover { color: #818181; }
footer p { line-height: 1.4em; }
footer p.arrow:before { content: url("/mail/newsletter/common/images/arrow.png"); margin-right: 3px; }
