@charset "UTF-8";
@media print, screen and (min-width: 769px) {
	.sp, .sp-show {
		display: none;
	}
	body * {
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	}
	.btn_close {
		display: none;
	}
	a {
		color: #0081cc;
		text-decoration: underline !important;
		-webkit-tap-highlight-color: transparent;
		-webkit-touch-callout: none;
		font-size: inherit;
    display: inline-block;
	}
	#wrapper {
		margin: 0 auto;
		padding: 0;
		width: 100%;
	}
	#contents {
		margin: 0 auto;
		padding: 0;
		width: 100%;
		background-color: transparent; /* #FCEEF5 */
	}
	#contents img {
    /*border: none;*/
		vertical-align: bottom;
		/*margin-bottom: 1em;*/
	}
	#hd {
		margin: 0 auto;
		padding: 0;
		width: 100%;
	}
	#hd .logo {
		background: #0f228b;
		margin: 0 auto;
		padding: 0;
		width: 100%;
	}
	#hd .logo p {
		margin: 0 auto;
		padding: 0;
		width: 960px;
	}
	#hd .visual {
		margin: 0 auto;
		padding: 0 0 0px;
		width: 960px;
		background: #fffed3;
	}
	/*#hd .visual p {
    margin: 0 auto;
    padding: 0;
    width: 960px;
  }*/
	#hd .visual ul {
		margin: auto;
		padding: 1em 4em 2em 4em;
	}
	#hd .visual ul.note-01 {
		font-size: 0.9rem
	}
	.red {
		color: #E00;
	}
	#hd .visual .members-info {
		background: #fffed3;
	}
	#main {
		margin: 0 auto;
		width: 960px;
		background: #fffce0;
		padding: 30px 0 0;
	}
	.bg02 {
		padding: 50px 0 90px;
		background: #FDF8E5;
	}
	#main .main-ttl {
		text-align: center;
	}
	#main .main-ttl h2 {
		font-weight: bold;
		font-size: 20px;
	}
	#main .main-ttl p {
		padding: 5px 0 30px;
	}
	#main .sec01 {
		width: 820px; /*width: 830px;*/
		margin: 0px auto 30px;
		padding: 0 25px 15px; /*padding: 40px;*/
		background: #fff;
		border-right: 2px solid #E5C3D3;
		border-bottom: 2px solid #E5C3D3;
		overflow: hidden;
	}
	.contact_btn {
		margin: 25px auto 30px;
		width: auto;
		text-align: center;
	}
	.contact_btn .caution {
		margin: 10px 0 0;
		color: #d1000a;
		text-align: center;
		font-size: 12px;
		display: block;
	}
	#main .sec01 .ttl {
		margin: 0 0 5px;
	}
	#main .sec01 .txt_img {
		margin: 0 0 40px;
		padding: 0 0 38px;
	}
	#main .ar {
		text-align: center;
	}
	#main .sec015 {
		width: 960px;
		margin: 0 auto 0;
		/*background: #fff;
    border-right: 2px solid #E5C3D3;
    border-bottom: 2px solid #E5C3D3;*/
		overflow: hidden;
		box-sizing: initial;
	}
	#main .sec015 .rewardsInfo {
		margin: 1em;
		font-size: 0.8rem;
	}
	#main .sec015.default_tokuten {
		background: #fff;
		border-right: 2px solid #E5C3D3;
		border-bottom: 2px solid #E5C3D3;
		width: auto;
		padding:35px 25px 30px;
	}
	#main .sec015.default_tokuten img {
		width: 100%;
		height: auto;
	}
	#main .sec015 .default_tokuten_list {
		background: #fff;
		border-right: 2px solid #E5C3D3;
		border-bottom: 2px solid #E5C3D3;
		width: auto;
		padding:35px 25px 30px;
	}
	#main .sec02 {
		width: 820px; /*width: 830px;*/
		margin: 45px auto 52px;
		padding: 22px 25px 5px; /*padding: 40px;*/
		background: #fff;
		border-right: 2px solid #E5C3D3;
		border-bottom: 2px solid #E5C3D3;
	}
	#main .sec02 .cont_se09_text01 {
		margin: 0 0 25px;
	}
	#main .sec02 p:nth-child(2) span {
		font-size: 0.8rem;
		margin-top: 0.8em;
		display: block;
	}
	.cont_sec04_ttl01 {}
	#main .sec01_2 {
		width: 820px; /*width: 830px;*/
		margin: 15px auto 40px;
		padding: 22px 25px 5px; /*padding: 40px;*/
		background: #fff;
		border-right: 2px solid #E5C3D3;
		border-bottom: 2px solid #E5C3D3;
		text-align: center;
	}
	#main .sec03 {
		width: 910px;
		margin: 0 auto 60px;
		padding: 40px 0;
		background: #fff;
		border-right: 2px solid #E0D2B8;
		border-bottom: 2px solid #E0D2B8;
	}
	#main .sec03 .inner {
		width: 870px;
		margin: 0 auto;
	}
	#main .sec03 .inner ul li {
		float: left;
		margin: 0 0 30px;
	}
	#main .sec03 .inner ul li.last {
		float: right;
	}
	#main .sec04 {
		width: 910px;
		margin: 0 auto 60px;
	}
	#main .sec04 .inner {
		width: 840px;
		margin: 0 auto 60px;
		padding: 30px 33px 0px;
		border: 2px solid #0f1350;
		background: #ffffff;
	}
	#main .cont_sec04_txt01 {
		padding-bottom: 20px;
	}
	#main .sec05 {
		width: 906px;
		margin: 0 auto 60px;
		border: 2px solid #f1832e;
		background: #ffffff;
	}
	#main .center {
		text-align: center;
	}
	#main .sec05 .inner {
		margin: 0 auto;
		padding: 40px 0 30px;
		width: 826px;
	}
	#main .sec05 .inner .ttl {
		margin: 0 0 20px;
	}
	#main .sec05 .inner .txt {
		margin: 0 0 40px;
	}
	#main .sec05 .inner a {
		color: #6a3906;
		font-size: 14px;
		text-decoration: underline;
	}
	#main .sec05 .inner a:hover {
		color: #af1b30;
	}
	.txtLink02 {
		margin: -50px 0 50px;
		position: relative;
	}
	#main .sec05 .cont_sec08_l {
		float: left;
		width: 454px;
	}
	#main .sec05 .cont_sec08_r {
		float: right;
		width: 452px;
	}
	/* sec09 */
	/*-------------------------------------------*/
	#main .sec12, #main .sec14 {
		width: 830px;
		margin: 0 auto 60px;
		padding: 40px;
		background: #fff;
		border-right: 2px solid #E5C3D3;
		border-bottom: 2px solid #E5C3D3;
		overflow: hidden;
	}
	#main .sec09 {
		width: 905px;
		margin: -15px auto 30px;
		padding: 0px;
		background: #fff;
		border-right: 2px solid #E5C3D3;
		border-bottom: 2px solid #E5C3D3;
		overflow: hidden;
	}
	#main .sec09 .in {
		padding: 20px 30px;
	}
	#main .sec09 .in h3 {
		color: #D1000A;
		font-weight: bold;
		font-size: 22px;
		margin-bottom: 10px;
	}
	#main .sec09 .in h4 {
		font-size: 14px;
		font-weight: bold;
		margin-top: 17px;
		line-height: 150%;
	}
	#main .sec09 .in p {
		font-size: 12px;
		line-height: 150%;
		padding-left: 0.5em;
		text-indent: -0.5em;
	}
	#main .sec09 .in p a {
		color: #00f;
	}
	#main .sec10 {
		width: 830px;
		margin: 0 auto 20px;
		text-align: center;
	}
	#main .sec11, #main .sec13 {
		width: 852px;
		margin: 0 auto 20px;
		text-align: center;
	}
	#main .sec12 {
		padding: 40px 45px;
		overflow: hidden;
	}
	#main .sec12 .firstBlock {
		text-align: left;
		margin-bottom: 40px;
	}
	#main .sec12 ul {
		display: block;
		width: 710px;
		margin: 0 auto 14px;
		overflow: hidden;
	}
	#main .sec12 ul li {
		float: left;
		margin-left: 85px;
	}
	#main .sec12 ul li:first-child {
		margin-left: 0;
	}
	#main .sec14 {
		width: 920px;
		padding: 40px 0;
	}
	#main .sec14 dl {
		display: block;
		overflow: hidden;
		margin-bottom: 35px;
	}
	.sec14 dl dt {
		display: block;
		width: 175px;
		float: left;
		overflow: hidden;
		text-align: right;
		border-right: 1px dotted #6a3906;
	}
	.sec14 dt {
		padding: 60px 50px;
	}
	#main .sec14 dl dd {
		display: block;
		float: left;
		padding: 20px 0 0 25px;
	}
	#main .sec14 dl.mb0 dd {
		padding: 11px 0 0 25px;
	}
	#main .sec14 dl dd img {
		display: block;
		margin-bottom: 15px;
	}
	#main .sec14 dl dd a {
		display: block;
		width: 360px;
		height: 16px;
		background-position: 0 0;
		background-repeat: no-repeat;
	}
	#main .sec14 dl dd a.btn01 {
		background-image: url(../img/cont_sec09_btn01.gif);
	}
	#main .sec14 dl dd a.btn02 {
		background-image: url(../img/cont_sec09_btn03.gif);
	}
	#main .sec14 dl dd a.btn01:hover {
		background-image: url(../img/cont_sec09_btn02.gif);
	}
	#main .sec14 dl dd a.btn02:hover {
		background-image: url(../img/cont_sec09_btn04.gif);
	}
	#ft {
		border-top: solid 4px #014099;
	}
	#ft ul {
		display: block;
		margin: 0 auto;
		width: 910px;
	}
	#ft ul li.left {
		float: left;
		padding: 20px 0 0 0;
	}
	#ft ul li.right {
		float: right;
		padding: 31px 0 0 0; /*padding:31px 0 0 0;*/
	}
	.shops_iconList {
		font-size: 12px;
		text-align: center;
	}
}
@media all and (-ms-high-contrast:none) {
	#ft ul li.right {
		padding: 31px 0 0 0;
	}
}
/*IE11だけに適用されるCSSハック*/
@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop, #ft ul li.right {
		padding: 31px 0 0 0;
	}
}
@media print, screen and (min-width: 769px) {
	.clearfix:after {
		content: "."; /* 新しい要素を作る */
		display: block; /* ブロックレベル要素に */
		clear: both;
		height: 0;
		visibility: hidden;
	}
	.clearfix {
		min-height: 1px;
	}
	* html .clearfix {
		height: 1px;
		/*¥*/ /*/
  height: auto;
  overflow: hidden;
  /**/
	}
	.contact_btn input:hover, a:hover img {
		opacity: 0.7;
		filter: alpha(opacity=70);
		-ms-filter: "alpha( opacity=70 )";
	}
	.txtLink {
		font-size: 14px;
		margin-right: 15px;
	}
	.txtLink a {
		color: #6a3906;
		text-decoration: underline;
	}
	.txtLink a:hover {
		color: #af1b30;
	}
	.txtLink a.icon {
		background: url(../img/cont_icon.gif) right center no-repeat;
		padding: 1em 1.5em 1em 0;
	}
	.txtLink a:hover.icon {
		background: url(../img/cont_icon02.gif) right center no-repeat;
		padding: 1em 1.5em 1em 0;
	}
	.secLogo .logoImg img {
		width: 100%;
	}
	.mb0 {
		margin-bottom: 0 !important;
	}
	.mb5 {
		margin-bottom: 5px !important;
	}
	.mb10 {
		margin-bottom: 10px !important;
	}
	.mb15 {
		margin-bottom: 15px !important;
	}
	.mb20 {
		margin-bottom: 20px !important;
	}
	.mb30 {
		margin-bottom: 30px !important;
	}
	.mb35 {
		margin-bottom: 35px !important;
	}
	.mb40 {
		margin-bottom: 40px !important;
	}
	.mb60 {
		margin-bottom: 60px !important;
	}
	.mt10 {
		margin-top: 10px !important;
	}
	.ml5 {
		margin-left: 5px !important;
	}
	.pb35 {
		padding-bottom: 35px !important;
	}
	#cp_area {
		position: relative;
	}
	.cp_day_area {
		position: absolute;
		top: 288px;
		left: 0px;
		width: 730px;
		width: 100%;
		text-align: center;
	}
	.cp_day_area_left {
		float: left;
		background: #af1b30;
		border: 1px solid #af1b30;
		font-weight: bold;
		color: #ffffff;
		font-size: 24px;
		padding: 10px;
		width: 30%;
		box-sizing: border-box;
		text-align: center;
	}
	.cp_day_area_right {
		background: #ffffff;
		border: 1px solid #af1b30;
		font-weight: bold;
		color: #af1b30;
		font-size: 23px;
		padding: 10px;
		width: 33em;
		box-sizing: border-box;
		text-align: center;
		display: inline-block;
	}
	.cp_day_area_right small {
		color: #af1b30 !important;
	}
	.cp_area_text {
		color: #6a3906;
		font-size: 14px;
		line-height: 1.4;
	}
	.box1 {
		padding: 30px;
		margin-bottom: 30px;
		background-color: #f6efd4;
	}
	.linkBox {
		width: 820px;
		margin: 0 auto;
	}
	.linkBox a {
		color: #6a3906;
		font-size: 16px;
		font-weight: bold;
		text-decoration: underline;
	}
	.linkBox a:hover {
		text-decoration: none;
	}
	.cont_se09_ttl01 {
		margin-top: 73px;
	}
	.imgLinkBtn {
		padding-left: 60px;
		background-color: #FDEEF5;
		display: block;
	}
	.sec015 .conditions {}
	.sec015 .conditionsInner {
		/*background-color: #fffed3;*/
		padding: 25px 40px 0;
		font-weight: bold;
	}
	.sec015 .conditionsInner h3 {
		background-color: #03004f;
		color: #FFF;
		font-weight: bold;
		font-size: 1.4rem;
		padding: 8px 0 4px;
		text-align: center;
		margin-bottom: 0.5em;
	}
	.sec015 .conditionsInner h4 {
		background-color: #03004f;
		color: #FFF;
		font-weight: bold;
		font-size: 0.8rem;
		padding: 1% 0;
		text-align: center;
		margin: 0.5em 0;
	}
	.sec015 .conditionsInner .caution {
		font-size: 1.4rem;
		font-weight: bolder;
		color: #ec509a;
		display: block;
	}
	.sec015 .conditionsInner ul strong {
		font-weight: bold;
		margin: 1.2em 0 0.2em;
		display: block;
	}
	.sec015 .conditionsInner li {
		text-indent: -1em;
		padding-left: 1em;
		font-weight: normal;
	}
	.sec015 .conditionsInner li a {
		color: #0b9ddd !important;
		text-decoration: underline !important;
		word-break: break-all;
	}
	.subWrapper {
		padding: 0 0 20px;
		font-size: 13px;
	}
	.brSp {
		display: none;
	}
	.conditionsInner .underLine {
		text-decoration: underline;
		color: #E00;
	}
	#cpSpec p {
		width: 100%;
		margin: auto;
		overflow-x: none;
	}
	#cpSpec p img {
		width: 100%;
		margin-bottom: 0;
	}
}
.sokuji-double {
	display: flex;
	margin: auto;
	width: fit-content;
}
.sokuji-double .double-fig {
	max-width: 406px;
}
.sokuji-double .double-fig img {
	width: 100%;
}
.sokuji .double-fig p {
	margin-top: 0.5em !important;
	font-size: 14px;
	text-align: left;
	line-height: 20px;
	width: 100% !important;
}
.u-td-ul {
	text-decoration: underline !important;
}
.sokuji-B ul {
	text-align: left;
	font-size: 14px;
	line-height: 18px;
	width: 860px;
	margin: 1em auto;
}
.sokuji-B li {
	text-indent: -1em;
	padding-left: 1em;
	padding-top: 5px;
}
#feat-7 {
	display: block;
	margin-top: -40px;
	padding-top: 60px;
	margin-bottom: 30px;
}
.feat-7 {
	width: 820px;
	margin: 0px auto 45px;
	padding: 35px 25px 30px;
	background: #fff;
	border-right: 2px solid #E5C3D3;
	border-bottom: 2px solid #E5C3D3;
	overflow: hidden;
}
.feat-7 h4 {
	text-align: center;
	color: #0068b7;
	font-size: 20px;
	padding: 0 0 2px;
	margin: 0 0 20px;
	border-bottom: 3px solid #0068b7;
	font-weight: bold;
	position: relative;
}
.feat-7 h4 span {
	color: #E00;
	font-weight: normal;
	font-size: 0.8rem;
	position: absolute;
	bottom: 0.3em;
	right: 0;
}
.feat-7 .members-info {
	background: #FFF;
	width: 100%;
}
.feat-7 ul {
	font-size: 14px;
	padding: 0 0 5px 14px;
	width: 95%;
	margin: auto;
}
.feat-7 li {
	padding: 0 0 2px;
	text-indent: -14px;
}
.feat-7 li::before {
	content: "●";
	color: #0068b7;
}
.feat-7 .fig-img {
	width: 100%;
	height: auto;
}
.f7-lead {
  text-align: center;
  font-size: 1.05rem;
  color: #E00;
  margin: 0 0 0 15px;
}
.f7-lead2 {
	font-weight: bold;
	font-size: 1rem;
}
.f7 .feature-title span {
	display: block;
	font-size: 1rem;
	font-weight: normal;
}
.f7 .feature-img img {
	width: auto;
	max-height: 192px;
}
.section-faq .ac-target {
	padding: 0 1em;
}
.section-faq .ac-btn-flg + .ac-btn + .ac-target {
	height: 0;
	visibility: hidden;
	opacity: 0;
	overflow: hidden;
	-webkit-transition: .3s;
	transition: .3s;
}
.section-faq .ac-btn-flg:checked + .ac-btn + .ac-target {
	height: auto;
	visibility: visible;
	opacity: 1;
	padding: 1em 0;
}
.section-faq .ac-btn {
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 12px 0 7px;
	font-size: 1.0rem;
	font-weight: bold;
	color: #0081cc;
	border-bottom: solid 1px #0081cc;
}
.section-faq .ac-btn2 {
	font-size: 1.1429rem /*16*/ ;
}
.section-faq div {
	padding: 1em 0;
}
.section-faq div span {
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}
.section-faq .ac-btn2::before, .section-faq .ac-btn2::after {
	position: absolute;
	top: 47%;
	right: 3px;
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	border-top: 2px solid #FFFFFF;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.section-faq .ac-btn2:after {
	top: calc(47% - 6px);
	right: 17px;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.section-faq .headline {
	background-color: #0081cc;
	color: #FFF;
	text-align: center;
	margin-top: 30px;
}
.section-faq .headline__title {
	font-size: 23px;
	color: #FFF;
}
.section-faq .content .modal_dl dt {
	background-color: #fff;
	font-size: 18px;
	font-weight: 500;
	padding: 10px 40px 10px 10px;
	position: relative;
	letter-spacing: -0.05em;
}
.section-faq .content .modal_dl dd {
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	padding-top: 10px;
	padding-bottom: 25px;
	padding-right: 20px;
	padding-left: calc(20px + 1.5em);
}
.section-faq .content .modal_dl dt:not(:last-of-type) {
	border-bottom: 1px solid #000;
}
.section-faq .content .modal_dl dt:hover {
	cursor: pointer;
}
.section-faq .btn-block .btn.btn-transition {
	font-size: 1.0rem;
}
.row02 .feature-img img {
	width: 100%;
}
.mv.mv-01 {
	background: none;
	padding: 0;
}
.mv.mv-02 {
	background-image: url(/lineup/images/ca150-lp-202209/bg_pc.png);
	padding: 20px 120px;
}
.mv h1 {
	background: none;
	height: auto;
	line-height: initial;
	padding: 0;
	margin: 0;
}
.mv h1 img {
	width: 100%
}
#card-feature {
	margin-bottom: 40px;
}
.sokuji {
	background: #e5f3ff;
	margin: 40px;
	padding: 20px;
	border-radius: 20px;
}
.sokuji .balloon {
	position: absolute;
	background: orange;
	padding: 1em;
	width: 280px;
	border-radius: 24px;
	right: 25px;
	top: -75px;
	font-size: 0.8rem;
	color: #FFF;
	font-weight: bold;
}
.sokuji .balloon p {
	width: auto !important;
}
.sokuji .balloon:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -20px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: orange transparent transparent transparent;
	border-width: 20px 20px 0 20px;
}
.sokuji .balloon .flex {
	display: inline-flex;
	justify-content: space-around;
}
.sokuji .balloon .flex a {
	padding: 0.5em;
	background: #FFF;
	margin: 0.1em;
	display: table-cell;
	border-radius: 14px;
}
.sokuji .balloon .flex a:nth-child(1) {
	margin-right: 0.2em;
}
.sokuji .balloon .flex a:nth-child(2) {
	margin-left: 0.2em;
}
#point-use {
	margin-top: -100px;
	padding-top: 100px;
	display: block;
}