html { background: #fafafa; }

body {
	font-size: 14px;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	color: #666;
	line-height: 1.4;
	background: #fff;
	max-width: 414px;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	background: #fff;
}
ul { list-style: none; padding: 5px 0; margin: 0; }
section {
	padding: 20px 0;
	border-bottom: 1px solid #ccc;
}
img { vertical-align: bottom; max-width: 100%; }
.content_box { padding: 0 15px; }
.no_mg { margin: 0 -15px; }

.arrow {
     position: relative;
     padding-left: 22px;
}
.arrow::before {
     position: absolute;
     content: '';
     width: 17px;
     height: 17px;
     background: #909ba2;
     border-radius: 50%;
     top: 50%;
     left: 0;
     margin-top: -9px;
}
.arrow::after {
     position: absolute;
     content: '';
     width: 4px;
     height: 4px;
     border-top: solid 1px #fff;
     border-right: solid 1px #fff;
     -webkit-transform: rotate(45deg);
     transform: rotate(45deg);
     top: 50%;
     left: 5px;
     margin-top: -3px;
}

.sub_img {
  width: 100%;
	margin: 14px auto;
  text-align: center;
}
figure {
  width: 47%;
  display: inline-block;
  margin: 0px 0 15px 0;
}
figure:nth-child(odd){
	margin-right: 10px;
}
figure img {
  max-width: 100%;
	width: 100%;
	height: auto;
}

.top_contents { padding: 0 0 25px; }

.content_box h1 {
  font-size: 22px;
  margin-top: 0px;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 8px;
  border-left: 15px solid #E60012;
  padding-top: 8px;
}
.content_box h1 .main_tit {
	display: block;
	padding: 3px 0 3px 8px;
	line-height: 1.2;
}
.content_box h1 span.sub_tit {
	display: block;
	font-size: 0.6em;
	font-weight: normal;
	padding: 0 0 5px 8px;
}

.img_area img {
	max-width: 100%;
	width: 100%;
	height: auto;
}
.dd_badge {
	background: #EBEBEB;
	position: relative;
	padding: 15px;
}
.dd_badge:before {
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	width: 100%;
	border-top: 1px dashed #999;
}
.dd_badge:after {
	content: "";
	position: absolute;
	bottom: 5px;
	left: 0;
	width: 100%;
	border-bottom: 1px dashed #999;
}



section h2 {
  margin-top: 0;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 13px;
  font-size: 17px;
}

.dd_txt dl {
  margin-top: 0;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 10px;
  color: #0066C0;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.dd_txt dl dd {
	margin-left: 10px;
}

.dd_txt dl dd a { color: #0066C0; }

.c_pink { color: #FF00FF; }
.link_txt a {
	margin-left: 8px;
	color: #0066C0;
}
.content_box ul li {
	padding-bottom: 10px;
	display: block;
}
.content_box ul li .date {
	padding-right: 8px;
}
.dd_badge_list li i { padding-right: 5px; }
.dd_badge_list li a,
.distro_h li a {
	color: #0066C0;
}

/******** ショップ用 *******/
.shop_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
		justify-content: flex-start;
	width: 100%;
	margin: 25px 0;
}

.shop_box .box_inner {
	width: 50%;
	margin-bottom: 10px;
	box-sizing: border-box;
}
.shop_box .box_inner:nth-child(odd) { padding-right: 8px; }
.shop_box .box_inner:nth-child(even) { padding-left: 8px; }

.shop_box .box_inner .e_txt {
	font-size: 0.95em;
	margin-top: 5px;
}

.table_info {
	width: 100%;
	border-collapse: collapse;
	text-align: left;
}
.table_info th { width: 5em; }
.table_info th,
.table_info td {
	font-weight: normal;
	padding: 6px 2px;
	border-top: 1px solid #ccc;
	vertical-align: top;
}

.table_info tr:last-child th,
.table_info tr:last-child td { border-bottom: 1px solid #ccc; }

/******** スタンプラリー用 *******/

.gift_area .gift_img { 
	margin: 1.5em 0;
	position: relative; 
}
.gift_area .gift_img span {
	font-family: 'Vollkorn', serif;
	color: #ccc;
	display: inline-block;
	position: absolute;
	left: 8px;
	top: 0;
	font-size: 3.6em;
}
.gift_d ul { 
	font-size: 15px; 
	font-weight: bold;
}
.gift_d ul li span { margin-right: 1em; }
.content_box { counter-reset: number; }
.content_box .ht_play {
	position: relative;
	padding: 0 0 0 2.3em;
}

.content_box .ht_play:before {
	counter-increment: number 1;
	content: counter(number);
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 7px;
	color: #fff;
	font-weight: bold;
	background: #999;
	line-height: 1.6;
}

.triangle {
	text-align: center; 
	padding: 1.2em 0.5em;
}
.triangle span {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 19px 11px 0 11px;
	border-color: #cccccc transparent transparent transparent;
	display: inline-block;
	vertical-align: bottom;
}
