@charset "utf-8";
header .pic {
	width: 912px;
	margin: 20px auto;
}
@media (max-width: 767px) {
	header .pic {
		width: 90.267vw;
		margin: 2.608vw auto;
	}
}

/*----------------------------
	toshin
------------------------------*/
#container.toshin {
	width: auto;
	overflow: visible;
}
.sp {
	display: none;
}
.toshin .inner {
	margin: 0 auto;
	padding: 0 25px;
	width: 1200px;
	border-radius: 20px;
}
.toshin p {
	margin-top: 0;
}
.toshin a {
	transition: opacity 0.3s ease-out;
}
.toshin a:hover {
	text-decoration: none;
	opacity: 0.7;
}
.toshin img {
	width: 100%;
	height: auto;
}
.toshin sup {
	font-size: 60%;
}
@media (max-width: 767px) {
	.toshin {
		font-size: 2.667vw;
	}
	.sp {
		display: block;
	}
	.pc {
		display: none;
	}
	.toshin .inner {
		width: 100%;
	}
}

/* sec common */
.toshin .sec .bgWrap {
	background: #F4F4F4;
}
.toshin .sec h2 {
	padding: 6px 0;
	background-color: #E74025;
	border-radius: 15px;
	font-size: 29px;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.toshin .sec h3 {
	padding: 6px 0;
	background-color: #E74025;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	text-align: center;
}
.toshin .sec .note {
	text-align: center;
}
@media (max-width: 767px) {
	.toshin .sec .inner {
		padding: 6vw 4.6667vw 6.667vw;
	}
	.toshin .sec h2 {
		padding: 0.782vw 0;
		border-radius: 1.956vw;
		font-size: 6.258vw;
	}
	.toshin .sec h3 {
		padding: 1vw 0;
		font-size: 4vw;
	}
}

/* sec01 */
.toshin .sec01 .conts {
	padding: 30px 0 60px;
}
.toshin .sec01 .leadWrap {
	margin: 0 auto;
	max-width: 1000px;
}
.toshin .sec01 .leadWrap .leadTtl {
	margin-bottom: 10px;
	font-size: 24.5px;
	font-weight: bold;
	text-align: center;
	color: #E74025;
	line-height: 1.6;
}
.toshin .sec01 .leadWrap .leadTxt {
	font-size: 20px;
	line-height: 1.75;
}
.toshin .sec01 .note {
	font-size: 16px;
	text-align: center;
}
.toshin .sec01 .bgWrap {
	margin-top: 15px;
}
.toshin .sec01 .bgWrap .present {
	padding: 40px 0;
}
.toshin .sec01 .bgWrap .present .pic {
	margin: 20px 0 15px;
}
@media (max-width: 767px) {
	.toshin .sec01 .conts {
		padding: 0;
	}
	.toshin .sec01 .leadWrap {
		max-width: 106.91vw;
	}
	.toshin .sec01 .leadWrap .leadTtl {
		margin: 0 -4.6667vw 3.304vw;
		font-size: 4.954vw;
	}
	.toshin .sec01 .leadWrap .leadTxt {
		font-size: 4.172vw;
	}
	.toshin .sec01 .note {
		text-align: left;
		font-size: 3.39vw;
	}
	.toshin .sec01 .bgWrap {
		margin-top: 4vw;
	}
	.toshin .sec01 .bgWrap .present {
		padding: 0;
	}
	.toshin .sec01 .bgWrap .present .pic {
		margin: 4.667vw 0;
	}
}

/* sec02 */
.toshin .sec02 .conts {
	padding: 15px 0 60px;
}
.toshin .sec02 p {
	font-size: 20px;
	line-height: 1.5;
	text-align: center;
	margin: 10px 0;
}
.toshin .sec02 .note {
	font-size: 16px;
}
@media (max-width: 767px) {
	.toshin .sec02 {
		margin-top:  4.333vw;
	}
	.toshin .sec02 .conts {
		padding: 5.333vw 0 2.333vw;
	}
	.toshin .sec02 p {
		font-size: 4.172vw;
		margin: 1.304vw 0;
	}
	.toshin .sec02 .note {
		font-size: 3.39vw;
	}
}

/* sec03 */
.toshin .sec03 .bgWrap .store {
	padding-top: 60px;
}
.toshin .sec03 h2 {
	position: relative;
}
.toshin .sec03 h2 .title{
	font-weight: bold;
}
.toshin .sec03 h2 .sign {
	font-size: 16px;
	position: absolute;
	left: 20px;
    top: 7px;
}
.toshin .sec03 .bgWrap .store .excluded {
	font-size: 16px;
}
.toshin .sec03 .conts {
	padding: 60px 10px 30px;
}
.toshin .sec03 .leadWrap ul {
	padding: 15px 10px;
	border: 1px solid #000;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	gap: 0 25px;
}
.toshin .sec03 .leadWrap ul li:last-child {
	width: 100%;
	text-align: center;
}
.toshin .sec03 .list {
	display: flex;
	flex-wrap: wrap;
	gap: 0 40px;
	width: 100%;
}
.toshin .sec03 .list li {
	font-weight: bold;
	background-color: #fff;
	border-radius: 15px;
	width: 540px;
	height: 270px;
	margin-bottom: 40px;
	padding: 20px 20px 30px 45px;
	font-size: 16px;
	text-indent: -1em;
	word-break: break-all;
}
.toshin .sec03 .list li .dot {
	color: #e74025;
}
.toshin .sec03 .list li .shop {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.4;
}
.toshin .sec03 .list li .txt02 {
	font-size: 17px;
	font-weight: bold;
	line-height: 1.4;
}
.toshin .sec03 .list li .txtRed {
	color: #e74025;
	font-weight: bold;
}
.toshin .sec03 .list li a {
	text-decoration: underline;
}
.toshin .sec03 .list li a:hover {
	text-decoration: none;
}
.toshin .sec03 .note {
	margin: 40px auto 0;
	font-size: 16px;
	text-align: center;
	width: 1200px;
}
@media (max-width: 767px) {
	.toshin .sec03 .bgWrap .store {
		padding-top: 4.823vw;
	}
	.toshin .sec.sec03 .inner {
		padding: 6vw 4.6667vw 0;
	}
	.toshin .sec03 h2 .sign {
		font-size: 3.39vw;
		left: 3.943vw;
		top: 3.608vw;
	}
	.toshin .sec03 h2 {
		padding: 2.782vw 0;
		border-radius: 1.956vw;
		font-size: 7.39vw;
		line-height: 1;
	}
	.toshin .sec03 h2 .title {
		font-size: 6.258vw;
	}
	.toshin .sec03 .bgWrap .store .excluded {
		font-size: 3.39vw;
	}
	.toshin .sec03 .conts {
		padding: 7vw 0 4vw;
	}
	.toshin .sec03 .conts p {
		font-size: 3.067vw;
		text-align: left;
	}
	.toshin .sec03 .leadWrap {
		margin: 6.667vw auto 0;
		width: 100%;
		font-size: 2.667vw;
	}
	.toshin .sec03 .leadWrap ul {
		padding: 3.333vw 2.667vw;
	}
	.toshin .sec03 .list {
		display: block;
	}
	.toshin .sec03 .list li {
		font-size: 3.39vw;
		border-radius: 1.956vw;
		width: 90.366vw;
		height: auto;
		margin-bottom: 3.911vw;
		padding: 5.608vw 6.823vw 5.911vw 6.608vw;
		text-indent: -1em;
		word-break: break-all;
	}
	.toshin .sec03 .list li + li {
		margin-top: 2vw;
	}
	.toshin .sec03 .list li .shop {
		font-size: 4.433vw;
		line-height: 1.4;
	}
	.toshin .sec03 .list li .txt02 {
		font-size: 3.733vw;
		line-height: 1.4;
	}
	.toshin .sec03 .list li a {
		line-height: 1.4;
	}
	.toshin .sec03 .note {
		font-size: 3.39vw;
		width: 100%;
		margin: 0 auto;
		padding: 0 4.6667vw 10.667vw;
		background: #F4F4F4;
	}
}

/* sec04 */
.toshin .sec04 {
	margin-top: 80px;
}
.toshin .sec04 .conts {
	padding: 35px 0 70px;
}
.toshin .sec04 .list {
	margin-left: 50px;
}
.toshin .sec04 .list li {
	font-size: 16px;
	text-indent: -1em;
	padding-left: 1em;
}
.toshin .sec04 .list li + li {
	margin-top: 25px;
}
.toshin .sec04 .attention {
	font-size: 15px;
	margin: 35px 0 0 50px;
}
.toshin .sec04 .attention li:first-child {
	color: #E74025;
}
@media (max-width: 767px) {
	.toshin .sec04 {
		margin-top: 2.608vw;
	}
	.toshin .sec04 .conts {
		padding: 8.667vw 0 4.667vw;
	}
	.toshin .sec04 .list {
		margin-left: 0;
	}
	.toshin .sec04 .list li {
		font-size: 3.733vw;
		line-height: 1.4;
	}
	.toshin .sec04 .list li + li {
		margin-top: 6vw;
	}
	.toshin .sec04 .attention {
		font-size: 3.733vw;
		margin: 4.563vw 0 0;
		line-height: 1.4;
	}
	.toshin .sec04 .attention li:nth-child(n+1) {
		text-indent: -1em;
		padding-left: 1em;
	}
	.toshin .sec04 .note {
		margin-top: 4vw;
		font-size: 3.733vw;
	}
}

/* sec05 */
.toshin .sec05 {
	background: #2887E5;
}
.toshin .sec05 .topics {
	color: #fff;
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	padding-top: 40px;
}
.toshin .sec05 .info {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 30px;
}
.toshin .sec05 .conts {
	padding: 30px 0 50px;
}
.toshin .sec05 .list {
	margin: 0 auto;
	max-width: 1100px;
}
.toshin .sec05 .list .shop {
	font-size: 20px;
	font-weight: bold;
}
.toshin .sec05 .list li {
	font-size: 16px;
	font-weight: bold;
	text-indent: -1em;
	background-color: #fff;
	border-radius: 20px;
	width: 100%;
	margin-bottom: 40px;
	padding: 25px 25px 35px 45px;
   }
.toshin .sec05 .list li .dot {
	color: #2887E5;
}
.toshin .sec05 .list li a {
	text-decoration: underline;
}
.toshin .sec05 .list li a:hover {
	text-decoration: none;
}
@media (max-width: 767px) {
	.toshin .sec05 .topics {
		font-size: 7.39vw;
		padding-top: 5.215vw;
	}
	.toshin .sec05 .info {
		font-size: 3.651vw;
		padding-bottom: 3.911vw;
	}
	.toshin .sec05 .conts {
		padding: 6vw 0 4vw;
	}
	.toshin .sec05 .list {
		max-width: 123.859vw;
	}
	.toshin .sec05 .list .shop {
		font-size: 4.347vw;
		line-height: 1.4;
	}
	.toshin .sec05 .list li {
		font-size: 3.39vw;
		border-radius: 3.956vw;
		margin-bottom: 6.211vw;
		padding: 5.608vw 7.563vw 6.911vw 7.563vw;
		word-break: break-all;
	}
}

/* sec06 */
.toshin .sec06 .conts {
	/* padding: 60px 0; */
	padding: 0 0 60px;
}
.toshin .sec06 .pic {
	margin: 0 auto;
	max-width: 1100px;
}
@media (max-width: 767px) {
	.toshin .sec06 .conts {
		/* padding: 5.333vw 0 8vw; */
		padding: 0 0 8vw;
	}
	.toshin .sec06 .pic {
		width: 100%;
	}
}

/* secEntry */
.toshin .secEntry {
	padding: 0 0 70px;
}
.toshin .secEntry .entryWrap {
	background: #fffeee;
	padding-bottom: 30px;
}
.toshin .secEntry .entryBtn {
	width: 600px;
	margin: 25px auto 0;
	position: relative;
}
.toshin .secEntry .entryBtn::before {
	content: "";
	width: 95px;
	height: 133px;
	background: url(/card/campaign/toshin/img/cat.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: -20px;
	left: -30px;
	z-index: 5;
}
.toshin .secEntry .entryBtn a {
	display: block;
	background: #00aecb;
	border-radius: 50px;
	padding: 25px 0 28px;
	font-size: 35px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	line-height: 1.3;
	position: relative;
}
.toshin .secEntry .entryBtn a::before {
	content: '';
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #fff;
	position: absolute;
	top: calc(50% - 26px);
	right: 25px;
}
.toshin .secEntry .entryBtn a::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14px 0 14px 18px;
	border-color: transparent transparent transparent #00aecb;
	position: absolute;
	top: calc(50% - 14px);
	right: 38px;
}
.toshin .secEntry h2 {
	font-size: 29px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	background: #00aecb;
	padding: 6px 0;
	border-radius: 0;
	margin-top: 80px;
}
.toshin .secEntry .entryList {
	margin: 30px auto 0;
	max-width: calc(1000px - 2em);
}
.toshin .secEntry .entryList li {
	font-size: 18px;
	position: relative;
}
.toshin .secEntry .entryList li::before {
	content: '●';
	font-size: 18px;
	color: #00aecb;
	position: absolute;
	top: 0;
	left: -1em;
}
.toshin .secEntry .entryLink {
	margin-top: 35px;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
}
.toshin .secEntry .entryLink a {
	color: #231815;
	text-decoration: underline;
	background: linear-gradient(transparent 50%, #faee00 50%);
}
.toshin .secEntry .entryLink02 {
	margin-top: 20px;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
}
.toshin .secEntry .entryLink02 a {
	color: #231815;
	text-decoration: underline;
	background: linear-gradient(transparent 50%, #faee00 50%);
}
@media (max-width: 767px) {
	.toshin .secEntry {
		padding: 0;
	}
	.toshin .secEntry .inner {
		width: 100%;
		padding: 6vw 0 0;
	}
	.toshin .secEntry .entryWrap {
		padding-bottom: 9.333vw;
	}
	.toshin .secEntry .entryBtn {
		width: 85vw;
		margin: 6.667vw auto 0;
	}
	.toshin .secEntry .entryBtn::before {
		width: 16.667vw;
		height: 23.467vw;
		top: -4.267vw;
		left: -0.933vw;
	}
	.toshin .secEntry .entryBtn a {
		border-radius: 12vw;
		padding: 4.667vw 0 4.333vw;
		font-size: 4.4vw;
	}
	.toshin .secEntry .entryBtn a::before {
		width: 5.733vw;
		height: 5.733vw;
		top: calc(50% - 2.867vw);
		right: 3.333vw;
	}
	.toshin .secEntry .entryBtn a::after {
		border-width: 1.333vw 0 1.333vw 1.333vw;
		top: calc(50% - 1.333vw);
		right: 5.333vw;
	}
	.toshin .secEntry h2 {
		font-size: 6.258vw;
		margin-top: 14vw;
		padding: 0.782vw 0;
	}
	.toshin .secEntry .entryList {
		margin-top: 6vw;
		padding: 0 6.667vw;
		max-width: 100%;
	}
	.toshin .secEntry .entryList li {
		font-size: 3.6vw;
		line-height: 5.067vw;
	}
	.toshin .secEntry .entryList li + li {
		margin-top: 5.333vw;
	}
	.toshin .secEntry .entryList li::before {
		font-size: 3.467vw;
		left: -1em;
	}
	.toshin .secEntry .entryLink {
		margin-top: 4.667vw;
		font-size: 3.733vw;
	}
	.toshin .secEntry .entryLink02 {
		margin-top: 5.333vw;
		font-size: 3.733vw;
		line-height: 4.133vw;
	}
}

/* footer */
footer {
	border-top: 5px solid #f4f4f4;
	padding: 35px 0 30px;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
}
@media (max-width: 767px) {
	footer {
		border-top: 0.667vw solid #f4f4f4;
		padding: 4.667vw 0 4vw;
		font-size: 1.867vw;
	}
}