@charset "utf-8";

/**
 *
 * Top: トップページ
 *
 */
/*
*/
.inner{
	padding: 0 15px;
}
.btn a{
	overflow: visible;
}
.btn a{
	position: relative;
	z-index: 2;
	color: #d00e0e;
	letter-spacing:1px;
	font-weight: bold;
	background:#fff;
	border:solid 2px #d00e0e;
	box-sizing: border-box;
	padding-bottom:57px;
	width: 85%;
	max-width: 288px;
}

.btn a:nth-of-type(1){
	background:#d00e0e;
	color: #fff;
}

.btn a:hover::before {
	background:#d00e0e;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.btn a:nth-of-type(1):hover {
	color: #d00e0e;
}
.btn a:nth-of-type(1):hover::before {
	background:#fff;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.btn a .btn_icon{
	display: block;
	border-top: 2px solid #d00e0e;
	border-right: 2px solid #d00e0e;
	transform: rotate(45deg);
	width: 1.2rem;
	height: 1.2rem;
	position: absolute;
	top: 0;
	right: 1.9rem;
	bottom: 0;
	margin: auto;
}
.btn a:nth-of-type(1) .btn_icon{
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btn a:hover .btn_icon{
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btn a:hover:nth-of-type(1) .btn_icon{
	border-top: 2px solid #d00e0e;
	border-right: 2px solid #d00e0e;
}
.back a{
	color: #d00e0e;
}
.blk{
	color:#d00e0e;
	font-weight: bold;
}
.red {
	color:#cc0033 !important;
	font-weight: bold;
}
#Contents{
	background: #d00e0e;
	padding:40px 0 0 0 !important;
}
#Contents p {
	font-size: 1.3rem;
	padding:20px 15px;
}
#Contents p.caution.list span{
	display: block;
	position: relative;
	padding: 0 0 5px 1.3em;
}
#Contents p.caution.list span::before{
	content: "●";
	display: block;
	position: absolute;
	top: 2px;
	left: 0;
	font-size: 80%;
}
#Contents p.caution.list span.red::before{
	color: #d00e0e;
}

#Contents p.caution.list span a {
	text-decoration: underline;
}
#Contents p.caution_txt{
	font-size: 1.2rem!important;
	padding-top: 0;
}

#Outline .section-inner .red+p.caution.list {
	padding-top: 0px;
	margin-top: -20px;
	padding-left: 42px;
}
#Outline .section-inner .red+p.caution.list span {
	color: #cc0033;
}
#Outline .section-inner .red+p.caution.list span:before {content: "●";
	display: block;
	position: absolute;
	top: 2px;
	left: 0;
	color: #cc0033;
	font-size: 80%;}

#Contents p.red {
	padding: 0 25px 20px 25px ;
}
#Contents p.note {
	font-size: 1rem;
	color: #d00e0e;
}
h2 {
	color: #D00F31;
	line-height: 24px;
	text-align: left;
	font-size: 24px;
	padding: 0 15px;
}
.btn a{
	margin-bottom: 0;
}
.btn p{
	font-size: 1.8rem!important;
	font-weight: bold;
	color: #0A2066;
	padding: 0!important;
	text-align: left;
	width: 85%;
	margin: 30px auto 0;
	max-width: 288px;
}
@media all and (min-width: 767px) {
	#Contents{
		padding:117px 0 0 0 !important;
	}
	h2 {
		line-height: 64px;
	}
	.btn a{
		width: 100%;
		max-width: 400px;
		height: 60px;
		line-height: 60px;
		margin: 0;
		font-size: 1.8rem !important;
	}
	.btn p{
		max-width: 400px;
	}
}

@media all and (max-width: 767px) {
	.btn a{
		padding-bottom:36px;
		margin-bottom:0;
		height: 60px;
		line-height: 60px;
		font-size: 1.4rem!important;
	}
	#Outline .section-inner .red+p.caution.list {
	padding-top: 0px;
	margin-top: -20px;
	padding-left: 38px;
}
}
/*----------------------------
	Keyvisual
-----------------------------*/
#Keyvisual{
	width: 100%;
	position: relative;
}
#Keyvisual .logo{
	position: absolute;
	top: 20px;
	right: 20px;
}
#Keyvisual .logo img {
	width: 50px;
	height: 50px;
}
#Keyvisual img{
	width: 100%;
}
#Keyvisual .label {
	position: absolute;
	bottom:10px;
	right: 10px;
	text-align: right;
}
#Keyvisual .label img {
	width: 100%;
}

.title{
	padding: 20px 0;
}
.title .inner{
	padding: 0 20px ;
}
.title p{
	padding: 0 5% 20px 5%;
	background: #fff;
	color: #242629;
	font-size: 1.4rem !important;
	padding: 20px;
	line-height: 1.8;
	text-align: center;
	font-weight: bold;
	position: relative;
	z-index: 0;
	border-radius: 4px;
	width:100%;
	border:3px solid #d00e0e;
}
/*
.title p:before,
.title p:after{
	content:"";
	display:block;
	height:1px;
	width:100%;
	background:-webkit-gradient(linear, left top, right bottom, from(#f00), to(#00f));
	background:-moz-linear-gradient(left, #f00, #00f);
	background:linear-gradient(left, #f00, #00f);
}

.title p:before{
	content: "";
	display: block;
	width: 65px;
	height: 65px;
	background: url(../images/campaign/band02.png) no-repeat ;
	background-size: 65px;
	position: absolute;
	top: -15px;
	right: -15px;
}
.title p:after{
	content: "";
	display: block;
	width: 48px;
	height: 48px;
	background: url(../images/campaign/band01.png) no-repeat ;
	background-size: 48px;
	position: absolute;
	bottom: -5px;
	left: -6px;
}
*/
.title p span.yellow{
	background:linear-gradient(transparent 50%, #fffeac 0%);
}
@media all and (min-width: 767px) {
	#Keyvisual .label {
		position: absolute;
		bottom:20px;
		right: 20px;
		text-align: right;
	}
	#Keyvisual .label img {
		width: 100%;
	}
	.infomation{
		position: relative;
		height: 72px;
	}
	.infomation .inner{
		max-width: 750px;
		position: relative;
		margin-left: auto;
		margin-right: auto;
	}
	.infomation .date{
		font-size:2.2rem;
		height:72px;
		line-height: 72px;
	}
	.infomation .image{
		position: absolute;
		bottom: 0;
		right: 7px;
	}
	.infomation .image img{
		width:200px;
		height: auto;
	}
	.infomation .balloon{
		padding: 4px 30px;
		font-size: 2.0rem;
		position: absolute;
		top: -45px;
		left: 0;
	}
	.infomation .balloon:after{
		position: absolute;
		z-index: 1;
		bottom: -13px;
		left: 60px;
		border-width: 0 20px 14px 0;
	}
	div.title{
		max-width: 750px;
		padding: 40px 0;
		margin-left: auto;
		margin-right: auto;
	}
	div.title .inner{
		padding: 0;
	}
	div.title p{
		color: #242629;
		font-size: 2.8rem !important;
		padding: 40px 0 !important;
		padding: 0;
	}
	div.title p:before{
		width: 130px;
		height: 130px;
		background-size:130px;
		position: absolute;
		top: -30px;
		right: -30px;
	}
	div.title p:after{
		width: 96px;
		height: 96px;
		background-size: 96px;
		position: absolute;
		bottom: -5px;
		left: -6px;
	}
	div.title p span.yellow{
		background:linear-gradient(transparent 50%, #fffeac 0%);
	}

}

/*----------------------------
	About
-----------------------------*/
#Outline{
	background: #fff;
	padding: 0;
}
#Outline .section-inner {
	background: #fff;
	max-width: 750px;
	padding-top: 60px;
}
#Outline .section-inner:first-child{
	padding-top: 40px;
}
#Outline .section-inner:last-child{
	margin: 0 auto 10px auto;
}
#Outline h2.caution{
	background: #707986;
	border-radius:0 !important;
}
#Contents .caution {
	border-radius:  0 0 6px 6px !important;
	overflow: hidden;
  	z-index: 10;
}
@media all and (min-width: 767px) {
	#Outline {
		padding: 0 5% 20px 5%;
	}
	#Outline .section-inner {
		margin-left:auto;
		margin-right:auto;
	}
	#Outline .section-inner p.note:last-child {
		padding: 0 5% 40px 5%;
	}
}

/*----------------------------
	theme_list
-----------------------------*/
.theme_list{
	color: #32363A;
	padding: 0 30px;
}
.theme_list li{
	border-bottom: solid 2px #EBEFF5;
	margin-bottom: 20px;
}
.theme_list a{
	text-decoration: underline;
}
.theme_list h3{
	font-size: 1.2rem;
	padding: 5px 0 8px;
	padding-left: 35px;
	position: relative;
	cursor: pointer;
}
.theme_list li h3::before{
	content: '';
	background-image: url('../images/ico_nikkei.png');
	background-repeat: no-repeat;
	background-size: contain;
	width: 25px;
	height: 25px;
	position: absolute;
	left: 0;
	top: 4px;
}
.theme_list li h3::after{
	content: '＋';
	position: absolute;
	font-size: 1.5rem;
	font-weight: normal;
	right: 0;
	top: 2.5px;
}
.theme_list li h3._active::after{
	content: '－';
}
.theme_list li:nth-of-type(2) h3::before{
	background-image: url('../images/ico_new.png');
}
.theme_list li:nth-of-type(3) h3::before{
	background-image: url('../images/ico_comu.png');
}
.theme_list li:nth-of-type(4) h3::before{
	background-image: url('../images/ico_goods.png');
}
.theme_list li:nth-of-type(5) h3::before{
	background-image: url('../images/ico_health.png');
}
.theme_list li:nth-of-type(6) h3::before{
	background-image: url('../images/ico_usa.png');
}
.theme_list li:nth-of-type(7) h3::before{
	background-image: url('../images/ico_gold.png');
}
.theme_list li:nth-of-type(8) h3::before{
	background-image: url('../images/ico_clean.png');
}
.theme_list li:nth-of-type(9) h3::before{
	background-image: url('../images/ico_inverse.png');
}
.theme_list div{
	background-color: #EBEFF5;
	font-size: 1.3rem;
	padding: 15px;
	position: relative;
	display: none;
}
.theme_list div::before{
	content: '';
	width: 0;
	height: 0;
	border-left: 30px solid #FCC87E;
	border-bottom: 30px solid transparent;
	position: absolute;
	top: 0;
	left: 0;
}
.theme_list div::after{
	content: '';
	width: 0;
	height: 0;
	border-right: 30px solid #FCC87E;
	border-top: 30px solid transparent;
	position: absolute;
	bottom: 0;
	right: 0;
}
.theme_list li:nth-of-type(2) div::before{
	border-left: 30px solid #F67F88;
}
.theme_list li:nth-of-type(2) div::after{
	border-right: 30px solid #F67F88;
}
.theme_list li:nth-of-type(3) div::before{
	border-left: 30px solid #B9B8F0;
}
.theme_list li:nth-of-type(3) div::after{
	border-right: 30px solid #B9B8F0;
}
.theme_list li:nth-of-type(4) div::before{
	border-left: 30px solid #A7DCF5;
}
.theme_list li:nth-of-type(4) div::after{
	border-right: 30px solid #A7DCF5;
}
.theme_list li:nth-of-type(5) div::before{
	border-left: 30px solid #87D9D6;
}
.theme_list li:nth-of-type(5) div::after{
	border-right: 30px solid #87D9D6;
}
.theme_list li:nth-of-type(6) div::before{
	border-left: 30px solid #86ADFC;
}
.theme_list li:nth-of-type(6) div::after{
	border-right: 30px solid #86ADFC;
}
.theme_list li:nth-of-type(7) div::before{
	border-left: 30px solid #DCDA00;
}
.theme_list li:nth-of-type(7) div::after{
	border-right: 30px solid #DCDA00;
}
.theme_list li:nth-of-type(8) div::before{
	border-left: 30px solid #97E993;
}
.theme_list li:nth-of-type(8) div::after{
	border-right: 30px solid #97E993;
}
.theme_list li:nth-of-type(9) div::before{
	border-left: 30px solid #F5A6EA;
}
.theme_list li:nth-of-type(9) div::after{
	border-right: 30px solid #F5A6EA;
}
@media screen and (min-width:767px){
	.theme_list h3{
		font-size: 1.5rem!important;
	}
	.theme_list div{
		font-size: 1.5rem;
	}
}

/* ===============================
PC共通
===============================*/
@media all and (min-width: 767px) {
	p {
		font-size: 1.5rem !important;
	}
	h2,h3 {
		font-size: 2rem !important;
	}
}

@media screen and (max-width: 767px){
.carousel_box{
padding: 20px 15px 0;
}
}

#carousel h2{
	text-align: center;
}

#carousel {
    padding: 20px 0;
}
.slick-dots{
  display: none;
}