@charset "utf-8";
/*/////////////////////////////////////
 Tablet 723px(768-991px)
/////////////////////////////////////*/
/*-----------------------------------------
    Heading
-----------------------------------------*/
h1 {
	font-size: 200%;
}
h2 {
	font-size: 160%;
}
h3 {
	font-size: 110%;
}
    h1 br,
    h2 br,
    h3 br {
        display: none;
    }
/*-----------------------------------------
    Flex
-----------------------------------------*/
.flex-nav {
	display: flex;
	justify-content: space-between ;
}
/*-----------------------------------------
    Base Structure
-----------------------------------------*/
.container {
	width: 723px;
   	margin-left: auto!important;
	margin-right: auto!important;
    padding-left: 0;
    padding-right: 0;
}
.logo-area {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 90;
    width: 200px;
    height: 200px;
    padding: 1em;
    box-sizing: border-box;
    background-color: #151e49;
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
/*-----------------------------------------
    Header
-----------------------------------------*/
header {
    position: relative;
    width: 723px;
    height: 580px;
    padding: 0;
    margin: 0 auto;
}
    .logo-area {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 90;
        width: 130px;
        height: 130px;
        padding: 1em;
        box-sizing: border-box;
        background-color: #151e49;
        border-right: 1px solid #fff;
        border-left: 1px solid #fff;
        border-bottom: 1px solid #fff;
    }
    .menu-content,
    .sub-menu-content {
        width: 100%;
    }
    .menu-content ul,
    .sub-menu-content ul {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 90;
        display: flex;
        justify-content: flex-end;
        width: calc( 100% - 20% );
    }
        .menu-content ul li,
        .sub-menu-content ul li {
            width: 25%;
            line-height: 30px;
            padding: 1em 0.5em 0 0;
        }
        .menu-content ul li.stores,
        .sub-menu-content ul li.stores {
            display: block;
            width: 25%;/*200px;*/
            height: 100px;
            line-height: 30px;
            padding: 1em 0 0 0;
            margin: 0;
            color: #151e49;
            background-color: #ded8d4;
            border-bottom: 5px solid #936704;
        }
        .menu-content ul li.stores br,
        .sub-menu-content ul li.stores br {
            display: block;
        }
.benefits-area {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    width: 500px;
}
        .vertical {
            position: absolute;
            left: 10px;
            bottom: 1em;
            font-size: 120%;
        }
	a.btn-detail {
		position: absolute;
		bottom: 1em;
		display: block;
		width: 80%;
		margin: 1em 0 0 50px;
		padding: 0.5em 1em;
		border: 1px solid #151e49;
	}

        a.btn-detail br {
            display: none;
        }
/*-----------------------------------------
    Header//Sub
-----------------------------------------*/
header.sub-head {
    position: relative;
    width: 100%;
    height: 130px;
    margin-bottom: 2em;
}
    .breadcrumb {
        position: absolute;
        bottom: 0;
        right: 0;
        width: calc( 100% - 160px );
        text-align: left;
}
/*-----------------------------------------
    Index Contents
-----------------------------------------*/
.notice-area {
	position: relative;
	width: 100%;
	margin: 0 auto 2em auto;
	padding: 0;
}
.notice-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.notice-box {
    width: 48%;
    margin: 0 0.5em 1em 0;
}
    .notice-box:nth-child(2n),
    .notice-box:last-child {
        margin: 0 0 0 0;
    }
.btn-area {
    display: flex;
    justify-content: space-between;
}
    a.notice-link-btn {
        display: block;
        width: 49%;
        padding: 0.5em 1em;
        margin: 2em 0 0 0;
        border: 2px solid #151e49;
    }
	.member-txt {
		display: block;
		margin: 0 0 2em 0;
		color: #151e49;
		font-family: 'Noto Serif JP', serif;
		font-weight: 300;
		display: flex;
		align-items: center;
	}
	span.red-memb {
		color: #c1272d;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 180%;
		font-weight: 900;
	}
		.member-txt:before,
		.member-txt:after {
			content: "";
			height: 3px;
			flex-grow: 1;
			background-color: #151e15;
		}
		.member-txt:before {
			margin-right: 1rem;
		}
		.member-txt:after {
			margin-left: 1rem;
		}

    .whats-txt {
        width: 90%;
        margin: 0 auto;
        padding: 1em;
        background-color: #fff;
    }
    .whats-img {
		width: 100%;
		margin: 2em 0;
	}
		.whats-img img {
			border-style:none;
			display:block;
			width: 700px;
			height: auto;
			margin: 0 auto;
		}   
.bn-area {
	width:100%;
	height: 100%;
	margin: 0 auto 2em auto;
}
    .btn-flex {
        display: flex;
        justify-content: space-between;
    }
        .bn-area a.link-btn {
            display: block;
            width: 230px;
            height: 50px;
            margin: 0;
            padding: 0.3em;
            font-size: 150%;
            font-weight: 500;
            border: 4px solid #936704;
            background-color: #f5f3f2;
        }
            .bn-area a.link-btn:hover {
                border: 4px solid #936704;
                background-color: #936704;
            }
    .banner-flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        margin: 1em 0;
    }
        .banner-flex::after {
            content: "";
            width: 230px;
            height: 0;
            margin: 0 0 1em 0;
            padding: 0;
        }
        .banner-flex img {
            width: 230px;
            height: auto;
            margin: 0 0 1em 0;
            padding: 0;
        }
/*-----------------------------------------
    Footer
-----------------------------------------*/
.foot-logo-area {
    width: 200px;
    height: auto;
    margin: 0 2em 0 0;
}
    .foot-logo-area img {
        width: 190px;
        height: auto;
        margin: 0;
        padding: 0;
    }
    #copy br {
        display: none;
    }
/*-----------------------------------------
    Sub Contents
-----------------------------------------*/
.sub-flex {
    margin-bottom: 2em;
    display: flex;
    justify-content: space-between;
}
    .sub-content-area {
        width: 65%;
        height: 100%;
        margin: 0;
        padding: 0 0 2em 0;
        text-align: left;
    }

/*-----------------------------------------
    Side Contents
-----------------------------------------*/
    .side-area {
        width: 30%;
        margin: 0;
        padding: 0 1em;
    }
    .side-bn-area a.link-btn {
        width: 100%;
    }
    .side-bn-area img {
        width: 100%;
        height: auto;
        margin: 0 auto 1em auto;
    }
/*-----------------------------------------
    Sub Contents//Archive
-----------------------------------------*/
.arch-area {
    display: flex;
    justify-content: space-between;
}
    .arch-txt {
        width: 60%;
        min-height: 200px;
    }
        .arch-txt .link-btn-blue {
            right: 1em;
            width: 60%;
        }
    .arch-img {
        width: 40%;
    }
/*-----------------------------------------
    Sub Contents//cooperating-stores(Parts)
-----------------------------------------*/
.archive-tab {
    position: relative;
    width: 100%;
    height: 100%;
    margin: 2em 0 1em 0;
    padding: 1em 0;
    box-sizing: border-box;

    display: flex;
    flex-wrap: wrap;
    align-self: start;
    justify-content: flex-start;
    align-content: flex-start;
}
.archive-tab h3 {
    display: block;
    width: 100%;
}
    .archive-tab a:link,
    .archive-tab a:active,
    .archive-tab a:visited {
        display: block;
        width: 18%;
        height: 100%;
        font-size: 150%;
        text-align: center;
        margin: 1em 1em 1em 0;
        padding: 0.5em 1.5em;
        box-sizing: border-box;
        color: #fff;
        border: 2px solid #151e49;
        background-color: #151e49;
    }
    .archive-tab a:hover {
        color: #151e49;
        border: 2px solid #151e49;
        background-color: #f5f3f2;
        text-decoration: none;
    }
	table.store-list th {
        display: table-cell;
		font-weight: 400;
		text-align: center;
		border-left: 1px solid #151e15;
		background-color: #ded8d4;
	}
	table.store-list td {
        display: table-cell;
		width: 25%;
		padding: 1em;
		border-left: 1px solid #151e15;
	}
		table.store-list td:nth-child(3) {
			width: 15%;
		}
/*------------------------------------------------------------
	Accordion//PC表示は全てOPEN
-------------------------------------------------------------*/
.ac-box {
	margin: 2em 0;
	padding: 0;
	width: 100%;
}
	.ac-box label {
		position: relative;
		display: block;
		margin: 1.5px 0;
		padding: 15px 15px;
		color: #151e49;
		cursor: auto;
		transition: all 0;
		border-top: none;
		border-bottom: none;
	}
	.ac-box label:after {
		position: absolute;
		right: 0;
		display: inline-block;
		content: '';
		font-family: '';
		padding: 0;
	}
	.ac-box label:hover {
		background: #f5f3f2;
	}
	.ac-box input {
		display: none;
	}

	.ac-box .show-item {
		height: auto;
		padding: 5px;
		overflow: auto;
		opacity: 1;
		transition: 0;
	}
	.cssacc:checked + label + .show-item {
		height: auto;
		padding: 5px;
		opacity: 1;
	}

/*アイコンを入れ替える*/
.cssacc:checked + label:after {
    display: inline;
	content: '';
	font-family: '';
	padding: 0;
}