@charset "utf-8";

@font-face {
	font-weight:100;
	font-family:"Yu Gothic";
	src:local("Yu Gothic Medium");
}

@font-face {
	font-weight:200;
	font-family:"Yu Gothic";
	src:local("Yu Gothic Medium");
}

@font-face {
	font-weight:300;
	font-family:"Yu Gothic";
	src:local("Yu Gothic Medium");
}

@font-face {
	font-weight:400;
	font-family:"Yu Gothic";
	src:local("Yu Gothic Medium");
}

@font-face {
	font-weight:700;
	font-family:"Yu Gothic";
	src:local("Yu Gothic Bold");
}

@font-face {
	font-weight:100;
	font-family:"Helvetica Neue";
	src:local("Helvetica Neue Regular");
}

@font-face {
	font-weight:200;
	font-family:"Helvetica Neue";
	src:local("Helvetica Neue Regular");
}

body#pudding_cpn #wrapper * {
	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Yu Gothic",YuGothic,Verdana,Meiryo,"M+ 1p",sans-serif;
}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {
	body {
		font-family:Verdana,Meiryo,sans-serif;
	}
}

.font_mincho,.font_mincho * {
	font-family:"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro","HG明朝B","MS Mincho",serif!important;
}

.css_pc_only {
	display:block;
}

.css_tab_only {
	display:none;
}

.css_smp_only {
	display:none;
}

/* ================ Style ================= */
/* #sec_head */
#sec_head {
	position:relative;
	margin:0 auto;
	padding-bottom:75px;
	max-width:1300px;
	min-width: 960px;
	background:#000 url(../img/sec_head_bg_kv.jpg) no-repeat center top;
}

#sec_head h1 {
	margin:0 auto 50px;
	padding:880px 0 0;
	max-width:735px;
	margin-left: ;
	background:url(../img/sec_head_title.png) no-repeat center bottom;
	background-size:100% auto;
	text-indent:-9999px;
}

#sec_head .badge {
	position:absolute;
	top:83px;
	left:50%;
	margin-left:-480px;
	width:175px;
}

#sec_head h2 {
	color:#fff;
	font-size:36px;
	line-height:1.4;
}

#sec_head .text_outline {
	margin:35px auto 45px;
	color:#fff;
	font-size:16px;
}

#sec_head .text_period {
	position:relative;
	display:inline-block;
	margin-bottom:50px;
	padding:0 10px;
	border:1px solid #fff;
	line-height:1.1;
	width: 748px;
}

#sec_head .text_period span {
	display:block;
	padding: 30px 34px;
	background:#000;
	color:#fff;
	font-weight:700;
	font-size:28px;
}


#sec_head .text_period span small {
	color:#fff;
	font-weight:700;
}

#sec_head .btn_download a {
	width: 748px;
	position:relative;
	display:inline-block;
	padding:35px 85px;
	border:2px solid #9a1f31;
	font-weight:700;
	font-size:20px;
}

#sec_head .btn_download a::after {
	position:absolute;
	right:8px;
	bottom:8px;
	width:15px;
	height:15px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	content:"";
	-webkit-transform:rotate(90deg);
	transform:rotate(90deg);
}

#sec_head .btn_download a:hover::after {
	border-top:2px solid #9a1f31;
	border-right:2px solid #9a1f31;
}

#sec_head .btn_download a:link,#sec_head .btn_download a:visited {
	background:#9a1f31;
	color:#fff;
	text-decoration:none;
}

#sec_head .btn_download a:hover,#sec_head .btn_download a:active {
	background:#fff;
	color:#9a1f31;
	text-decoration:none;
}

/* #nav */
article + nav{
	max-width: 1300px;
	margin: auto;
	background: #95855e;
}
#nav {
	margin:0 auto;
	padding:32px 0;
	width:954px;
	font-size:0;
}

#nav li {
	display:inline-block;
	width:33%;
	border-right:1px solid #fff;
	text-align:center;
	font-size:18px;
}

#nav li:first-child {
	border-left:1px solid #fff;
}

#nav li a {
	position:relative;
	display:block;
	padding:10px 0 22px;
	font-weight:700;
	font-size:18px;
}

#nav li a::after {
	position:absolute;
	bottom:3px;
	left:50%;
	margin-left:-4px;
	width:8px;
	height:8px;
	border-top:1px solid #fff;
	border-right:1px solid #fff;
	content:"";
	-webkit-transform:rotate(135deg);
	transform:rotate(135deg);
}

#nav li a:hover::after {
	border-top:1px solid #fff;
	border-right:1px solid #fff;
}

#nav li a:link,#nav li a:visited {
	color:#fff;
}

#nav li a:hover,#nav li a:active {
	color:#fff;
}

/* #wrapper */
#pudding_cpn #wrapper.page {
	margin-bottom:0;
	width:100%;
	max-width:1300px;
	min-width: 960px;
}

#pudding_cpn #wrapper.page section {
	margin-bottom:0;
}

#pudding_cpn #wrapper.page .section {
	position:relative;
	clear:both;
	overflow:hidden;
}

#pudding_cpn #wrapper.page .section h2 {
	position:relative;
	display:inline-block;
	margin-bottom:5px;
	color:#040000;
	font-size:14px;
}

#pudding_cpn #wrapper.page .section h2::before {
	position:absolute;
	left:-2.25rem;
	display:block;
	width:30px;
	height:10px;
	border-bottom:1px solid #040000;
	content:"";
}

#pudding_cpn #wrapper.page .section h2::after {
	position:absolute;
	right:-2.25rem;
	display:block;
	margin-top:-.55rem;
	width:30px;
	height:1px;
	border-top:1px solid #040000;
	content:"";
}

#pudding_cpn #wrapper.page .section h3 {
	margin:10px 0 40px;
	font-weight:500;
	font-size:46px;
	line-height:1.4;
}

#pudding_cpn #wrapper.page .section#sec_lineup h3 {
	margin-bottom: 90px;
}

#pudding_cpn #wrapper.page .section h3 span {
	display:block;
	font-weight:500;
	font-size:28px;
	line-height:1.4;
}

#pudding_cpn #wrapper.page .attention {
	font-size:12px;
	margin:0 0 80px 0;
}


/* #sec_lineup */
#sec_lineup {
	padding-top:90px;
	background:#e0ddd3;
	background-size:472px auto;
}

#sec_lineup ul {
	margin:0 auto;
	max-width:960px;
	font-size:0;
}

#sec_lineup li {
	position:relative;
	display:inline-block;
	width:33%;
	vertical-align:top;
	font-size:14px;
}

#sec_lineup li .lineup_img {
	display:block;
	margin:0 auto;
	width:57.5%;
}

#sec_lineup li .lineup_badge {
	position:absolute;
}

#sec_lineup li .badge_no1 {
	top:-30px;
	left:1.5%;
	width:23.33333333%;
}

#sec_lineup li .badge_55th {
	top:24%;
	right:-5px;
	width:29.66666667%;
}

#sec_lineup li .badge_new {
	top:-48px;
	left: 0;
	right: 0;
	margin: auto;
	width:30%;
}

#sec_lineup li .badge_limited {
	top:160px;
	left: 8px;
	width:18.66666667%;
}

#sec_lineup li dl {
	margin:10px auto 80px;
	width:85%;
}

#sec_lineup li dt {
	margin:0 -0.5em 15px;
	padding-bottom:15px;
	border-bottom:1px solid #ccc;
	font-weight:700;
	font-size:20px;
	line-height:1.6;
}

#sec_lineup li dt span {
	display:block;
	margin-top:10px;
	font-weight:700;
	font-size:20px;
	line-height:1.3;
}

#sec_lineup li dt span + span {
	margin-top:0;
}

#sec_lineup li:nth-child(4) dt span,#sec_lineup li:nth-child(5) dt span,#sec_lineup li:nth-child(6) dt span {
	margin-top:0;
}

#sec_lineup li dt small {
	font-weight:700;
	font-size:13px;
}

#sec_lineup li dd {
	margin:0 -0.5em;
	text-align:left;
	letter-spacing:0;
	font-size:14px;
	line-height:1.8;
}

#sec_lineup li dd p {
	margin-top:10px;
	color:#221815;
	letter-spacing:0;
	font-size:12px;
	line-height:1.5;
}

#sec_lineup li dd p span {
	color:#9a1f31;
	letter-spacing:0;
	font-size:12px;
	line-height:1.5;
}

#sec_lineup #box_recycle {
	position:relative;
	overflow:visible!important;
	margin:0 auto 70px;
	padding:65px 70px 25px;
	max-width:960px;
	border:1px solid #ccc;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
}

#sec_lineup #box_recycle h4 {
	position:absolute;
	top:0;
	left:50%;
	display:inline-block;
	margin-top:-20px;
	margin-left:-8.1%;
	padding:0 3%;
	width:21.25%;
	background:#e0ddd3;
}

#sec_lineup #box_recycle .recycle_img {
	position:absolute;
	top:55px;
	left:60px;
	padding-bottom:15px;
	width:15.10416667%;
}

#sec_lineup #box_recycle dl {
	padding-left:26.5%;
	text-align:left;
}

#sec_lineup #box_recycle dt {
	margin-bottom:25px;
	font-weight:700;
	font-size:20px;
}

#sec_lineup #box_recycle dd {
	color:#221815;
	font-size:14px;
	line-height:1.8;
}

/* #sec_thanks */
#sec_thanks {
	height: 301px;
	background:#e0ddd3 url(../img/sec_thanks_kv.jpg) no-repeat center bottom;
}


/* #sec_present */
#sec_present {
	position:relative;
	padding:75px 0 80px;
	background:#95855e;
	background-size:701px auto;
}

#pudding_cpn #wrapper.page .section#sec_present *,
#pudding_cpn #wrapper.page .section#sec_present h2,
#pudding_cpn #wrapper.page .section#sec_present h3,
#pudding_cpn #wrapper.page .section#sec_present h3 span {
	color: #fff;
}

#pudding_cpn #wrapper.page .section#sec_present h2::before,
#pudding_cpn #wrapper.page .section#sec_present h2::after {
	border-top-color: #fff;
	border-bottom-color: #fff;
}


#sec_present ul {
	overflow:hidden;
	margin:0 auto;
	width:100%;
	max-width:960px;
	font-size:0;
}

#sec_present li {
	position:relative;
	display:inline-block;
	padding-right:8%;
	width:49.9%;
	vertical-align:top;
	text-align:left;
	font-size:14px;
}

#pudding_cpn #wrapper.page .section#sec_present li .badge_num {
	position:absolute;
	top:46.5%;
	right:50px;
	padding-top:24px;
	width:100px;
	height:100px;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
	border-radius:50%;
	background:#fff;
	color:#95855e;
	text-align:center;
	font-size:32px;
	letter-spacing: 0px;
	border: 4px solid #95855e;
	font-weight: 600;
}

#pudding_cpn #wrapper.page .section#sec_present li .badge_num small {
	display:block;
	color:#95855e;
	font-size:14px;
	font-weight: bold;
}

#sec_present li dl {
	position:relative;
	margin:25px 0 20px;
}

#sec_present li dt {
	margin:0 -4% 35px 0;
	padding-left:4rem;
	font-weight:700;
	font-size:22px;
}

#sec_present li dt small {
	display:block;
	padding:5px 0 10px;
	font-weight:700;
	font-size:18px;
}

#sec_present li dt strong {
	position:absolute;
	left:0;
	display:block;
	padding-right:10px;
	border-right:1px solid #fff;
	color:#fff;
	text-align:center;
	font-weight:700;
	font-size:40px;
	line-height:1.1;
}

#sec_present li dt strong span {
	display:block;
	color:#fff;
	text-align:center;
	font-weight:400;
	font-size:13px;
}

#sec_present li dd {
	font-weight:700;
	font-size:14px;
	line-height:1.6;
}

#sec_present li .note {
	margin-right:-4%;
	padding-left:.7em;
	text-indent:-.7em;
	letter-spacing:0;
	font-size:12px;
	line-height:1.5;
}

/* #sec_guideline */
#sec_guideline {
	padding:70px 0 80px;
	background:#fbfcfd;
}

#sec_guideline dl {
	position:relative;
	margin:0 auto;
	width:100%;
	max-width:960px;
	border-bottom:1px solid #cbcbcb;
	text-align:left;
}


#sec_guideline dl.last{
	position:relative;
	margin:0 auto 50px auto;
	width:100%;
	max-width:960px;
	border-bottom:1px solid #cbcbcb;
	text-align:left;
}



#sec_guideline h3+dl {
	border-top:1px solid #cbcbcb;
}

#sec_guideline dt {
	position:absolute;
	top:50%;
	left:0;
	margin-top:-.55rem;
	width:10rem;
	font-weight:700;
	font-size:14px;
	line-height:1.4;
}

#sec_guideline .height_2 dt {
	margin-top:-1.15rem;
}

#sec_guideline dd {
	padding:2rem 0 2rem 12rem;
	font-size:14px;
	line-height:1.6;
}

#sec_guideline dd p {
	margin-bottom:40px;
}

#sec_guideline dd ul {
	overflow:hidden;
	margin:-2px 0;
}

#sec_guideline dd li {
	padding:2px 0;
}

#sec_guideline dd li a {
	text-decoration: underline;
}

#sec_guideline dd li a:hover {
	text-decoration: none;
}

#sec_guideline .list_note01 li {
	padding-left:.7em;
	text-indent:-.7em;
}

#sec_guideline .list_note02 li {
	padding-left:1em;
	text-indent:-1em;
}

#sec_guideline .btn_download a {
	max-width: 960px;
	width: 100%;
	position:relative;
	display:inline-block;
	padding: 50px 0;
	padding-left: 100px;
	border:2px solid #9a1f31;
	font-weight:700;
	font-size:26px;
}

#sec_guideline .btn_download.onlineshop a {
	padding-left: 0;
	text-align: center;
	margin-bottom: 30px;
}

#sec_guideline .btn_download a > span {
	width: 100px;
	height: 100px;
	padding-top: 26px;
	display: block;
	position: absolute;
	top: 14px;
	left: 24px;
	background: #fff;
	border-radius: 50%;
	font-size: 16px;
	color: #9a1f31;
	font-weight: bold;
	letter-spacing: -2px;
	line-height: 1.2;
}

#sec_guideline .btn_download a > span span {
	color: #9a1f31;
	font-size: 24px;
}

#sec_guideline .btn_download a::after {
	position:absolute;
	right:8px;
	bottom:8px;
	width:15px;
	height:15px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	content:"";
	-webkit-transform:rotate(90deg);
	transform:rotate(90deg);
}

#sec_guideline .btn_download a:hover span {
	color: #fff;
}

#sec_guideline .btn_download a:hover > span {
	background:#9a1f31;
}

#sec_guideline .btn_download a:hover::after {
	border-top:2px solid #9a1f31;
	border-right:2px solid #9a1f31;
}

#sec_guideline .btn_download a:link,#sec_guideline .btn_download a:visited {
	background:#9a1f31;
	color:#fff;
	text-decoration:none;
}

#sec_guideline .btn_download a:hover,#sec_guideline .btn_download a:active {
	background:#fff;
	color:#9a1f31;
	text-decoration:none;
}

#sec_guideline .btn_download a img.btn_p {
	position:absolute;
	bottom: 5px;
	left: 15px;
	width: 70px;
}

.topTxt{
	width: 332px;
	height: 133px;
	position: absolute;
	left: 170px;
	top: 580px;
}

.indent{
	color: #000 !important;
	text-indent: -1em;
	padding-left: 1em;
	display: inline-block;
}

#sec_lineup li dt{
	margin-top: 50px;
}

.new_1,
.new_2{
	margin-top: -20px !important;
}

#sec_lineup li.new_1 dt,
#sec_lineup li.new_2 dt{
	margin-top: 0;
}
