@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; }

p.notes { font-size: 10px; font-size: 0.625rem; }

#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; }

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.2em; }
@media only screen and (max-width: 480px) { body { letter-spacing: 0.1em; } }

a { text-decoration: underline; color: #000; }
a:active, a:hover { color: #d3d3d3; }

/* layout Style */
header { width: 100%; padding: 0; margin: 0 0 30px; background-color: #000000; overflow: hidden; }
@media only screen and (max-width: 480px) { header { margin: 0; } }
header figure { margin: 0 auto 0; max-width: 960px; }
@media only screen and (max-width: 480px) { header figure img { width: 100%; } }
header h1 { margin: 0 auto 0; max-width: 960px; text-align: center; font-size: 20px; font-size: 1.25rem; color: #fff; padding: 20px 0 25px; }
header h1 img { width: 100%; }
header h1 .sub { font-size: 16px; font-size: 1rem; }
@media only screen and (max-width: 480px) { header h1 { font-size: 18px; font-size: 1.125rem; padding: 10px 0; } }

/** * mixin report($caption-pos:left, $top-pos:0) @param (caption-pos) caption位置 省略可 default値はleft @param (top-pos) captionのtop位置 省略可 default値は0px */
#report1 { margin: 0 auto 0; max-width: 960px; overflow: hidden; position: relative; letter-spacing: 0.1em; }
@media only screen and (max-width: 960px) { #report1 { margin-bottom: 10px; } }
#report1 figcaption { position: relative; margin-top: 110px; float: left; width: 460px; margin-left: 10px; margin-right: 10px; font-size: 14px; font-size: 0.875rem; }
#report1 figcaption p { margin-bottom: 20px; }
@media only screen and (max-width: 960px) { #report1 figcaption { 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; }
  #report1 figcaption p { margin-bottom: 0; } }
#report1 figure { position: relative; padding-bottom: 20px; float: right; max-height: 390px; }
#report1 figure p { position: absolute; line-height: 1.5em; padding-left: 10px; bottom: 0; }
#report1 figure img { max-width: 100%; }
@media only screen and (max-width: 960px) { #report1 figure { float: none; display: block; max-width: 470px; margin: 0 auto; line-height: 0; }
  #report1 figure img { float: none; width: 100%; height: auto; } }

#report2 { margin: 0 auto 0; max-width: 960px; margin-top: 20px; overflow: hidden; position: relative; letter-spacing: 0.1em; }
@media only screen and (max-width: 960px) { #report2 { margin-bottom: 10px; } }
#report2 figcaption { position: relative; margin-top: 40px; float: right; width: 460px; margin-left: 10px; margin-right: 10px; font-size: 14px; font-size: 0.875rem; }
#report2 figcaption p { margin-bottom: 20px; }
@media only screen and (max-width: 960px) { #report2 figcaption { 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; }
  #report2 figcaption p { margin-bottom: 0; } }
#report2 figure { position: relative; padding-bottom: 20px; float: left; max-height: 390px; }
#report2 figure p { position: absolute; line-height: 1.5em; padding-left: 10px; bottom: 0; }
#report2 figure img { max-width: 100%; float: right; }
@media only screen and (max-width: 960px) { #report2 figure { float: none; display: block; max-width: 470px; margin: 0 auto; line-height: 0; }
  #report2 figure img { float: none; width: 100%; height: auto; } }

#report3 { margin: 0 auto 0; max-width: 960px; overflow: hidden; position: relative; letter-spacing: 0.1em; }
@media only screen and (max-width: 960px) { #report3 { margin-bottom: 10px; } }
#report3 figcaption { position: relative; margin-top: 120px; float: left; width: 460px; margin-left: 10px; margin-right: 10px; font-size: 14px; font-size: 0.875rem; }
#report3 figcaption p { margin-bottom: 20px; }
@media only screen and (max-width: 960px) { #report3 figcaption { 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; }
  #report3 figcaption p { margin-bottom: 0; } }
#report3 figure { position: relative; padding-bottom: 20px; float: right; max-height: 390px; }
#report3 figure p { position: absolute; line-height: 1.5em; padding-left: 10px; bottom: 0; }
#report3 figure img { max-width: 100%; }
@media only screen and (max-width: 960px) { #report3 figure { float: none; display: block; max-width: 470px; margin: 0 auto; line-height: 0; }
  #report3 figure img { float: none; width: 100%; height: auto; } }

#report4 { margin: 0 auto 0; max-width: 960px; overflow: hidden; position: relative; letter-spacing: 0.1em; }
@media only screen and (max-width: 960px) { #report4 { margin-bottom: 10px; } }
#report4 figcaption { position: relative; margin-top: 120px; float: right; width: 460px; margin-left: 10px; margin-right: 10px; font-size: 14px; font-size: 0.875rem; }
#report4 figcaption p { margin-bottom: 20px; }
@media only screen and (max-width: 960px) { #report4 figcaption { 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; }
  #report4 figcaption p { margin-bottom: 0; } }
#report4 figure { position: relative; padding-bottom: 20px; float: left; max-height: 390px; }
#report4 figure p { position: absolute; line-height: 1.5em; padding-left: 10px; bottom: 0; }
#report4 figure img { max-width: 100%; float: right; }
@media only screen and (max-width: 960px) { #report4 figure { float: none; display: block; max-width: 470px; margin: 0 auto; line-height: 0; }
  #report4 figure img { float: none; width: 100%; height: auto; } }

#shopWrapper { width: 100%; background: #fff; overflow: hidden; margin: 50px 0 50px; border-top: #cdcdcd 1px solid; border-bottom: #cdcdcd 1px solid; position: relative; }
@media only screen and (max-width: 480px) { #shopWrapper { margin: 1px 0; } }
#shopWrapper #shoplist { position: relative; overflow: hidden; max-width: 960px; margin: 50px auto; 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; width: 300px; } }
#shopWrapper #shoplist h2 { margin-left: 10px; margin-bottom: 20px; font-size: 14px; font-size: 0.875rem; }
@media only screen and (max-width: 480px) { #shopWrapper #shoplist h2 { margin-bottom: 10px; } }
#shopWrapper #shoplist h2 img { width: 135px; height: 40px; }
#shopWrapper #shoplist p { position: absolute; right: 10px; bottom: 0px; font-size: 10px; font-size: 0.625rem; }
@media only screen and (max-width: 480px) { #shopWrapper #shoplist p { position: relative; right: 0; margin-left: 10px; } }
#shopWrapper #shoplist .shop-box { width: 25%; float: left; height: 70px; min-width: 150px; display: inline-block; }
#shopWrapper #shoplist .shop-box dt, #shopWrapper #shoplist .shop-box dd { margin-left: 50px; }
#shopWrapper #shoplist .shop-box dt.layout, #shopWrapper #shoplist .shop-box dd.layout { margin-left: 20px; }
#shopWrapper #shoplist .shop-box dt.layout2, #shopWrapper #shoplist .shop-box dd.layout2 { margin-left: 10px; }
@media only screen and (max-width: 960px) { #shopWrapper #shoplist .shop-box dt, #shopWrapper #shoplist .shop-box dd { margin-left: 10px; }
  #shopWrapper #shoplist .shop-box dt.layout, #shopWrapper #shoplist .shop-box dd.layout { margin-left: 10px; } }
#shopWrapper #shoplist a { color: #323232; }

#info { margin: 0; padding: 60px 0 30px; font-size: 12px; font-size: 0.75rem; line-height: 1.61; letter-spacing: 0.1em; background-color: #eee; text-align: center; color: #000; }
@media only screen and (max-width: 480px) { #info { padding: 30px 10px 40px; letter-spacing: 0em; } }
#info p { margin-bottom: 30px; }
#info p a { color: #000; }
#info p a:active, #info p a:hover { color: #aaa; }
#info p.nextTips { position: relative; width: 400px; height: 40px; margin: 30px auto; background-color: #fff; border: #cdcdcd 1px solid; color: #000; }
#info p.nextTips:hover { background-color: #ddd; }
@media only screen and (max-width: 480px) { #info p.nextTips { width: 300px; } }
#info p.nextTips a { position: absolute; display: block; width: 400px; height: 20px; padding: 10px 0; }
#info p.nextTips a:active, #info p.nextTips a:hover { color: #000; }
@media only screen and (max-width: 480px) { #info p.nextTips a { width: 300px; } }

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: 960px) { .tab { display: none !important; }
  .sp { display: inherit; } }
@media only screen and (max-width: 480px) { .pc { display: none !important; }
  .sp { display: inherit; } }
/* Nav Style */
nav { width: 100%; background-color: #e9e9e9; height: 40px; overflow: hidden; position: relative; }
nav p.tipsTitle { position: absolute; }
nav #navWrapper { max-width: 960px; margin: 0 auto; float: right; }
nav #navWrapper li { float: left; }
nav #navWrapper li.newsletterTop { margin-right: 27px; }

/* responsive */
@media only screen and (max-width: 960px) { nav { height: 30px; }
  nav p.tipsTitle img { width: 140px; 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 { height: 60px; }
  nav p.tipsTitle { position: relative; text-align: center; height: 30px; border-bottom: 1px solid #F0F0F0; }
  nav #navWrapper { position: relative; width: 100%; }
  nav #navWrapper li.newsletterTop { 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; }
