@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, $fig-mgt:0) @param (caption-pos) caption位置 省略可 default値はleft @param (top-pos) captionのtop位置 省略可 default値は0px @param (fig-mgt) figureのtop位置 省略可 default値は0px */
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; }
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; } }

#report1 { margin: 20px auto 0; max-width: 960px; padding-bottom: 40px; font-size: 16px; font-size: 1rem; position: relative; background-color: #fff; border-bottom: 1px solid #c6c6c6; }
#report1 p { margin: 0 10px 0px 10px; }
@media only screen and (max-width: 960px) { #report1 { font-size: 14px; font-size: 0.875rem; max-width: 470px; padding-bottom: 20px; } }

#report2 { margin: 40px auto 40px; max-width: 960px; font-size: 14px; font-size: 0.875rem; }
#report2 p { padding: 0 10px 0px 10px; }
@media only screen and (max-width: 960px) { #report2 { font-size: 12px; font-size: 0.75rem; max-width: 470px; margin-bottom: 20px; margin-top: 20px; } }

#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: 10px; float: left; width: 460px; margin-left: 10px; margin-right: 10px; font-size: 14px; font-size: 0.875rem; }
#report3 figcaption h2 { font-size: 16px; font-size: 1rem; font-weight: bold; margin: 0 0 10px; }
@media only screen and (max-width: 960px) { #report3 figcaption h2 { font-size: 14px; font-size: 0.875rem; margin-bottom: 5px; } }
#report3 figcaption h3 { font-weight: bold; }
#report3 figcaption .point:before { content: ''; background: url("../images/ico-point.png") 0 0 no-repeat; height: 18px; width: 25px; display: inline-block; position: relative; top: 4px; }
#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 { margin-top: 0; float: right; max-height: 390px; }
#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 20px; 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: 20px; float: right; width: 460px; margin-left: 10px; margin-right: 10px; font-size: 14px; font-size: 0.875rem; }
#report4 figcaption h2 { font-size: 16px; font-size: 1rem; font-weight: bold; margin: 0 0 10px; }
@media only screen and (max-width: 960px) { #report4 figcaption h2 { font-size: 14px; font-size: 0.875rem; margin-bottom: 5px; } }
#report4 figcaption h3 { font-weight: bold; }
#report4 figcaption .point:before { content: ''; background: url("../images/ico-point.png") 0 0 no-repeat; height: 18px; width: 25px; display: inline-block; position: relative; top: 4px; }
#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 { margin-top: 0; float: left; max-height: 390px; }
#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; } }

#report5 { margin: 20px auto 40px; max-width: 960px; font-size: 14px; font-size: 0.875rem; position: relative; border-bottom: 1px solid #c6c6c6; background-color: #fff; padding-bottom: 40px; }
#report5 h2 { font-size: 16px; font-size: 1rem; font-weight: bold; margin: 0 0 10px; }
@media only screen and (max-width: 960px) { #report5 h2 { font-size: 14px; font-size: 0.875rem; margin-bottom: 5px; } }
#report5 h3 { font-weight: bold; }
#report5 .point:before { content: ''; background: url("../images/ico-point.png") 0 0 no-repeat; height: 18px; width: 25px; display: inline-block; position: relative; top: 4px; }
#report5 h2, #report5 h3, #report5 p { padding: 0 10px; }
@media only screen and (max-width: 960px) { #report5 { font-size: 12px; font-size: 0.75rem; max-width: 470px; padding-bottom: 20px; margin-bottom: 20px; margin-top: 0; } }

#report6 { margin: 0px auto 40px; max-width: 960px; font-size: 14px; font-size: 0.875rem; position: relative; background-color: #fff; }
#report6 h2 { font-size: 16px; font-size: 1rem; font-weight: bold; margin: 0 0 10px; }
@media only screen and (max-width: 960px) { #report6 h2 { font-size: 14px; font-size: 0.875rem; margin-bottom: 5px; } }
#report6 h3 { font-weight: bold; }
#report6 .point:before { content: ''; background: url("../images/ico-point.png") 0 0 no-repeat; height: 18px; width: 25px; display: inline-block; position: relative; top: 4px; }
#report6 h2, #report6 h3, #report6 p { padding: 0 10px; }
@media only screen and (max-width: 960px) { #report6 { font-size: 12px; font-size: 0.75rem; max-width: 470px; margin-top: 0; margin-bottom: 20px; } }

#report { margin: 40px auto 60px; max-width: 960px; font-size: 16px; font-size: 1rem; }
#report p { margin: 0 10px 20px 10px; }
@media only screen and (max-width: 960px) { #report { font-size: 14px; font-size: 0.875rem; max-width: 470px; margin-bottom: 40px; margin-top: 20px; } }

#shopWrapper { width: 100%; background: #fff; overflow: hidden; margin: 10px 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: 12px; font-size: 0.75rem; }
#shopWrapper #shoplist h2 img { width: 135px; height: 40px; }
#shopWrapper #shoplist p { position: absolute; right: 10px; bottom: 10px; }
@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: 960px) { #info p.nextTips { height: 40px; } }
@media only screen and (max-width: 480px) { #info p.nextTips { width: 300px; height: 40px; } }
#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: 960px) { #info p.nextTips a { height: 40px; } }
@media only screen and (max-width: 480px) { #info p.nextTips a { width: 300px; height: 40px; } }

footer { background-color: #000; text-align: center; letter-spacing: 0; font-size: 12px; font-size: 0.75rem; padding: 7px 0; width: 100%; color: #fff; }

span.check { background: -moz-linear-gradient(transparent 60%, #fbb9cf 0%); /* Firefox用 */ background: -webkit-linear-gradient(transparent 60%, #fbb9cf 0%); /* Safari用 */ background: -ms-linear-gradient(transparent 60%, #fbb9cf 0%); /* IE用 */ background: -o-linear-gradient(transparent 60%, #fbb9cf 0%); /* Opera用 */ background: linear-gradient(rgba(0, 0, 0, 0) 60%, #fbb9cf 0%); /* Default */ }

.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; }
