@charset "UTF-8";

.contsTtl .redH {
	background: #d00f31;
}
.redBtn {
	/* background-color: #d00f31; */
	background: linear-gradient(90deg,#ff242b 0,#8f0000 25%, #ff242b 60%,#8f0000 100%);
	-webkit-box-shadow: 0px -5px 0px 0px #a2031f inset;
	box-shadow: 0px -5px 0px 0px #a2031f inset;
}
.cpBtnY {
	background: #fad025;
	color: #111111;
	-webkit-box-shadow: 0px -5px 0px 0px #b39f3f inset;
	box-shadow: 0px -5px 0px 0px #b39f3f inset;
}
.cpBtnG {
	background: #2dad55;
	-webkit-box-shadow: 0px -5px 0px 0px #1f823e inset;
	box-shadow: 0px -5px 0px 0px #1f823e inset;
}
.dbaraiBtn{
	margin: 0 auto;
	padding: 0 13.54167% 3.125%;
}
.dbaraiList01{
	padding: 0 5%;
	overflow: hidden;
	background: url("../img/imgparts9_2_01_bg.png") repeat-y;
}
.dbaraiList02{
	padding: 0 5%;
	overflow: hidden;
	background: url("../img/imgparts9_5_01_bg.png") repeat-y;
}	
.dbaraiList03{
	padding: 0 5%;
	overflow: hidden;
	background: url("../img/imgparts9_8_01_bg.png") repeat-y;
}
.dbaraiList01 li,
.dbaraiList02 li,
.dbaraiList03 li{
	width: 31.945%;
	float: left;
	margin-right: 2.085%;
}
.dbaraiList01 li:nth-child(3n+0),
.dbaraiList02 li:nth-child(3n+0),
.dbaraiList03 li:nth-child(3n+0){
	margin-right: 0;
	margin-bottom: 3%;
}

/* add */
.cp_page {
	font-family: 'Noto Sans JP',"Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3","メイリオ",Meiryo;
}
.contsTtl .mainColor {
	font-size: 30px;
	padding: 9px 20px;
	background: #1c296f;
	text-align: center;
}
a.txtLink {
	text-decoration: underline;
    color: #005bac;
    display: inline;
}
.cpNotesSubttl {
	font-size: 21px;
	line-height: 1.5;
	color: #d7181f;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 10px;
}
.cpNotesList {
	line-height: 1.8;
}
.attention__lead {
	font-size: 16px;
}
.cpNotesItem01 {
	text-indent: -1.7em;
	padding: 0px 0px 0px 1.7em;
}
.cpNotesItem02 {
	text-indent: -2.5em;
	padding: 0px 0px 0px 1.8em;
}
.shopBtn01 {
	background-color: #1c296f;
	-webkit-box-shadow: 0px -5px 0px 0px #15205f inset;
	box-shadow: 0px -5px 0px 0px #15205f inset;
}
.shopBtn02 {
	background-color: #94bfe6;
	-webkit-box-shadow: 0px -5px 0px 0px #628eb8 inset;
	box-shadow: 0px -5px 0px 0px #628eb8 inset;
}
.normalBtnLink:after {
	right: 10px;
}
.normalBtnTxt .forSp{
	display: none;
}
/* アコーディオン（対象店舗）
 ========================== */
.shopArea {
	max-width: 780px;
	width: 90%;
	margin: auto;
}
.shopCatTtl {
	width: 100%;
	color: #fff;
	font-size: 1.2em;
	font-weight: 600;
	text-align: center;
	background-color: #628eb8;
	padding: 0.6em 1em;
	letter-spacing: 0.05em;
	box-sizing: border-box;
	position: relative;
}
.shopCatTtl::after {
	content: "－";
	color: #fff;
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translateY(-50%);
	font-size: 1.3em;
}
.shopCatTtl.is-close::after {
	content: "+";
	font-size: 1.8em;
}
.shopLists {
	display: flex;
	flex-wrap: wrap;
	border: 2px solid #628eb8;
}
.shopList {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
	width: 50%;
	padding: 1.5%;
	box-sizing: border-box;
	border-bottom: 2px solid #628eb8;
}
.shopList:nth-of-type(even) {
	border-left: 2px solid #628eb8;
}
.shopList:last-of-type,
.shopList:nth-last-child(2) {
	border-bottom: none;
}
.shopTxt {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}
.shopFloor {
	font-size: 0.8em;
	font-weight: 600;
	text-align: center;
	color: #a0780e;
	padding: 1em 0;
	min-width: 45px;
	margin-right: 20px;
	background-color: #f8e9c0;
}
.shopNameTtl {
	font-weight: 600;
}
.shopNameCat {
	font-size: 0.8em;
	color: #aaa;
}
@media screen and (max-width: 640px) {
	.shopList {
		width: 100%;
		padding: 3%;
	}
	.shopList:nth-of-type(even) {
		border-left: none;
	}
}

/* モーダル
 ========================== */
.modalWrap {
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}
.modalBg {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}
.modalWrap .modal {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1000;
    border-radius: 10px;
    max-height: 95vh;
}
@media screen and (max-width: 640px) {
	.modalWrap .modal {
		width: 90vw !important;
	}
}

/* アコーディオン（対象外店舗）
 ========================== */
.accordion.acco_shoplist{
	font-size: 16px;
}
.accordion.acco_shoplist table {
	border-right: 2px solid #1c296f;
	border-bottom: 2px solid #1c296f;
	border-left: 2px solid #1c296f;
	box-sizing: border-box;
	width: 100%;
}
.accordion.acco_shoplist table tr {
	border-bottom: 2px solid #1c296f;
}
.accordion.acco_shoplist table td {
	border-bottom: 2px solid #1c296f;
	border-right: 2px solid #1c296f;
	box-sizing: border-box;
	padding: 10px;
}
.accordion.acco_shoplist table .floor {
	width: 20%;
	vertical-align:middle;
	text-align: center;
}
.accordion.acco_shoplist table .shopname {
	width: 80%;
	font-size: 14px;
}
.accordion.acco_shoplist table .shopname .shopname_note {
	color: red;
	font-size: 13px;
}
.accordion.acco_shoplist table td:nth-child(2n){
	border-right: none;
}
.accordion.acco_shoplist table td:last-of-type {
	border-bottom: none;
}
.accordion.acco_shoplist table td a{
	text-decoration: underline;
}
.accordion.acco_notshoplist ul {
	border-left: 2px solid #628eb8;
	border-right: 2px solid #628eb8;
	border-bottom: 2px solid #628eb8;
}
.accordion.acco_notshoplist li{
	font-size: 16px;
	text-align: left;
	width: 100%;
	padding: 10px 20px;
	border-bottom: 1px solid #628eb8;
}
.toggle_btn {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	background: #ffffff;
	display: block;
	width: 30px;
	height: 30px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 50%;
}
.switch .toggle_btn:before, .toggle_btn:after {
	display: block;
	content: '';
	background-color: #1c296f;
	position: absolute;
	width: 14px;
	height: 4px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.switch.shopBtn02 .toggle_btn:before,.switch.shopBtn02 .toggle_btn:after {
background-color: #94bfe6;
}
.switch .toggle_btn:before {
	width: 4px;
	height: 14px;
}
.switch.open .toggle_btn:before {
	content: normal;
}
.accordion.acco_shoplist .switch:after,
.accordion.acco_notshoplist .switch:after{
	display: none;
}

/* キャンペーン
 ========================== */
 .contents_block_campaign a {
	display: block;
	margin: auto;
}
.contents_btn {
	margin: auto;
	display: block;
	text-align: center;
	margin-top: 20px;
	max-width: 540px;
}
.contents_btn-link {
	display: block;
	border-radius: 100px;
	position: relative;
	transition: 0.2s ease;
	padding: 0;
}
.contents_footer {
	margin: 5vw 0;
}
@media screen and (max-width: 640px) {
	.contsTxt {
		font-size: 16px;
	}
	.cpNotesSubttl {
		font-size: 19px;
		margin-bottom: 5px;
	}
	.cpNotesList {
		line-height: 1.5;
	}
	.attention__lead {
		font-size: 14px;
	}
	.contents_btn-link {
		padding: 0 8.33333% 3.125%;
	}
}

.forPC {display: inline;}
.forSP {display: none;}
@media screen and (max-width: 640px){
	.accordion.acco_shoplist td{
		font-size: 12px;
	}
	.accordion.acco_notshoplist li{
		font-size: 14px;
	}
	.toggle_btn {
		width: 20px;
		height: 20px;
	}
	.switch .toggle_btn:before, .toggle_btn:after {
		width: 10px;
		height: 2px;
	}
	.switch .toggle_btn:before {
		width: 2px;
		height: 10px;
	}
	.forPC {display: none;}
	.forSP {display: inline;}
}

@media screen and (min-width: 641px) {
	.forSP {
		display: none;
	}
	.normalBtn {
		width: 550px;
	}
	.normalBtnLink {
		font-size: 26px;
	}
	.accordion .storeBtn {
		font-size: 26px;
	}
}
@media screen and (max-width: 640px) {
	.forSP {
		display: inline;
	}
	.forPC {
		display: none;
	}
	.contsTtl span.mainColor {
		font-size: 18px;
	}
	.contsTxt {
		font-size: 16px;
	}
	.normalBtnLink {
		font-size: 16px;
		padding: 12px 30px 14px;
	}
	.normalBtnLink:after {
		right: 5px;
	}
	.flbnpb {padding-bottom: 15% !important;}
	.couponBox {
		border: 3px solid #ea0f31;
	}
	.couponBox ul li {
		font-size: 0.8em;
	}
	.caution .notesIndent {
		font-size: 0.85em;
	}
}
@media screen and (max-width: 350px) {
	.normalBtnTxt .forSp{
		display: inline;
	}
}
