@charset "UTF-8";

/*--------------------------------
フォント
---------------------------------*/
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight: 400;
	src: url('../font/NotoSans_medium.woff') format('woff');
}
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight: 400;
	src: url('../font/NotoSans_medium.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight:500;
	src: url('../font/NotoSans_semibold.woff') format('woff');
}
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight:500;
	src: url('../font/NotoSans_semibold.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight: 700;
	src: url('../font/NotoSans_bold.woff') format('woff');
}
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight: 700;
	src: url('../font/NotoSans_bold.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight:300;
	src: url('../font/NotoSans_light.woff') format('woff');
}
@font-face {
    font-family: 'Noto Sans JP Subset';
	font-weight: 300;
	src: url('../font/NotoSans_light.woff2') format('woff2');
}

/*--------------------------------
 全体
---------------------------------*/
/*ベースカラー*/
:root{
	--color-a:#007260;
	--color-b:#ed7e2b;
	--color-c:#fcecdf;
	--color-red:#c30044;
	--color-yel:#ffff00;
	--color-bk:#303030;
	--color-gry:#0c7061;
	--color-nv:#1d2080;
  }
/*layout*/
#wrapper {
	width: 100%;
	position: relative;
}
.inner-a{
	max-width: 1200px;
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}

.inner-b{
	max-width: 1000px;
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}
section{
	width: 100%;
	overflow: hidden;
}


/*画像*/
img {
	width: 100%;
}
/*margin*/
.mt-xl {
	margin-top: 6em;
}
.mt-l {
	margin-top: 3.5em;
}
.mt-m {
	margin-top: 2em;
}
.mt-n {
	margin-top: 1em;
}
.mt-s {
	margin-top: 0.25em;
}
.m-center{
	margin-left: auto;
	margin-right: auto;
}
/*flex*/
.flex-row{
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
}
.flex-column-center{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

/*スマホ用PC用要素*/
.pc-only {
	display: block;
}
.sp-only {
	display: none;
}


/*1000px以下*/
@media (max-width: 1000px) {

}
/*タブレット&スマホ*/
@media (max-width: 780px) {
	.pc-only {
		display: none;
	}
	.sp-only {
		display: block;
	}
}

/*スマートフォン*/
@media (max-width : 580px) {
/*margin*/
.mt-xl {
	margin-top: 4em;
}
.mt-l {
	margin-top: 2em;
}
.mt-m {
	margin-top: 1.5em;
}

}

/*--------------------------------
 文字
---------------------------------*/


body {
	font-family:'Noto Sans JP Subset', sans-serif;
	font-weight: 400;
	color: var(--color-bk);
	font-size: 17px;
	background-color: #fff;
}

h2, h3, h4,dt {
	line-height: 1.3;
}
h2 {
	font-weight: 700;
	letter-spacing: 0.1em;
}
h3{
	font-weight:700;
	letter-spacing: 0.05em;
}
p,dd {
	line-height: 1.7;
	font-feature-settings: "palt";
	text-align: justify;
	letter-spacing: 0.05em;
}
.t-reed{
	font-size: 19px;
	line-height: 1.6;
}
.t-cap {
	font-size: 14px;
	font-weight: 300;
	line-height: 1.3;
}
.t-right {
	text-align: right;
}
.t-left {
	text-align: left;
}
.t-center {
	text-align: center;
}
.t-big{
	font-size: 1.8em;
}
.t-mid{
	font-size: 1.2em;
}
.t-small{
	font-size: 0.7em;
}
.t-strong{
	font-weight: bold;
	font-size: 1.1em;
}
.t-nowrap{
	display: inline-block;
}
.t-red{
	color: var(--color-red);
}
.t-yel{
	color: var(--color-yel);
}
.nowrap{
	white-space: nowrap;
}

/*タブレット*/

@media (max-width: 780px) {
	body {
		font-size: 16px;
	}

	.t-reed{
		font-size: 16px;
	}
}
/*スマートフォン*/
@media (max-width : 580px) {
	body {
		font-size: 15px;
	}
	.t-reed{
		font-size: 15px;
	}


	.t-cap {
		font-size: 12px;
	}
}



/*--------------------------------
aタグ、ボタン
---------------------------------*/
a:hover{
	filter: brightness(1.1); 
	transition:0.3s;
	cursor: pointer;
}

.afc_popup a:hover{
	filter: brightness(1.1); 
	transition:0.3s;
	cursor: pointer;
}
/*--------------------------------
fv ナビゲーション
---------------------------------*/
.fv-nav-wrap{
	width: 100%;
	position: fixed;
	background-color: #fff;
	z-index: 100;
	top:0;	
}

.fv-nav {
	width: 100%;
	padding-left: 2%;
}
.fv-nav,
.fv-nav-logo,
.fv-nav-btn {
	height: 64px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
.fv-nav-btn{
	justify-content: center;
}
.fv-nav-logo{
	width: 540px;
}
.fv-logo{
	width: 60%;
}
.fv-logo img{
	height: auto;
}
.fv-nav-p{
	flex: 1;
	font-size: 12px;
	font-weight: 400;
	margin-left: 8px;
	letter-spacing: 0;
	white-space: nowrap;
}
.fv-nav-btn {
	width: 240px;
	background-color: var(--color-b);
	color: #fff;
	font-size: 19px;
}
.fv-nav-btn img{
	width: 32px;
	margin-right: 5px;
} 
@media (max-width: 780px) {
		.fv-nav,
	.fv-nav-logo,
	.fv-nav-btn{
		height: 54px;
	}
	.fv-nav {
		padding-left: 0;
	}
	.fv-nav-logo {
		width: 50%;
		margin-left: 2%;
		margin-right: 2%;
	}
	.fv-nav-btn {
		width: 35%;
	}
	.fv-logo{
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.fv-nav-btn {
		font-size: 3.2vw;
	}
	.fv-nav-btn img{
		width: 12%;
		margin-right: 2%;
	}
}



@media (max-width: 580px) {
	.fv-nav,
	.fv-nav-logo,
	.fv-nav-btn{
		height: 46px;
	}
	.fv-nav-logo{
		width: 60%;
	}
}

/*--------------------------------
sc-info ショップインフォメーション
---------------------------------*/

.shop-list{
	width: 100%;
	height: 80px;
	background-color: rgba(0, 127, 107, 1);
	background-image: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(0, 114, 96, 1) 10px, rgba(0, 114, 96, 1) 20px );
	position: fixed;
	top:64px;
	z-index: 99;
}
.shop-list-content{
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.shop-list-ttl-wrap{
	width: 20%;
	height: 100%;
	color: #fff;
	font-size: min(1.5vw,18px);
	line-height: 1.4;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	position: relative;
}
.shop-list-ttl-wrap::after{
	content: "";
	width: 6%;
	height: 0;
	padding-top: 6%;
	border-right:2px solid #f6f6f6;
	border-bottom:2px solid #f6f6f6 ;
	transform: rotate(-45deg) translateY(-50%);
	position: absolute;
	right: 4%;
	top: 44%;
}
.shop-list-ttl{
	width: 75%;
	height: 100%;
	margin-right: 15%;
}
.shop-list-ttl-balloon{
	width: 100%;
	height: 25px;
	font-size: 0.9em;
	letter-spacing: 0.15em;
	background-color: var(--color-b);
	color: #fff;
	font-weight: 700;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 0 999px 999px 0;
	margin-bottom: 0.2em;
}

.shop-list-ttl-p{
	font-size: 1em;
	line-height: 1;
	text-align: center;
}
.shop-list-ttl-p span{
	font-size: 0.8em;
}
.shop-list-list-wrap{
	width: 80%;
	padding-right: 1%;
}
.dropdown-nav-wrap{
	width: 100%;
	display: flex;
	flex-direction: row;
	gap:0.8%;
	flex-wrap: wrap;
}
.dropdown-nav{
	width: 16%;
	height: 32px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 15px;
	background-color: var(--color-a);
	transition: all 0.2s;
	position: relative;
	margin-bottom: 0.25%;
}
.dropdown-nav::after{
	content: "";
	width: 8%;
	height:0;
	padding-top: 8%;
	background-image: url(../img/icon_arrow_under.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: 4%;
	top:50%;
	transform: translate(0,-50%);
	transition: 0.2s;
}
.dropdown-nav:hover::after{
	background-image: url(../img/icon_arrow_up.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.dropdown-nav:nth-of-type(7),
.dropdown-nav:nth-of-type(8),
.dropdown-nav:nth-of-type(9),
.dropdown-nav:nth-of-type(10),
.dropdown-nav:nth-of-type(11){
	margin-bottom: 0;
}

	.dropdown-nav:hover{
		background-color: #f6f6f6;
		color: var(--color-a);
	}
	.dropdown-nav:hover .dropdown-list-wrap{
		display: block;
		position: absolute;
		top: 32px;
		width: 310%;
		background-color: #fff;
		z-index: 100;
		box-shadow: 0 2px 4px #00000020;
		padding: 0.25em 0.5em;
	}
	.dropdown-nav:first-of-type:hover .dropdown-list-wrap,
	.dropdown-nav:nth-of-type(7):hover .dropdown-list-wrap{
		left: 0;
	}
	.dropdown-nav:nth-of-type(5):hover .dropdown-list-wrap,
	.dropdown-nav:nth-of-type(6):hover .dropdown-list-wrap,
	.dropdown-nav:nth-of-type(11):hover .dropdown-list-wrap{
		left: unset;
		right: 0;
	}
.dropdown-list-wrap{
	display: none;
}

.dropdown-list{
	color: var(--color-a);
	width: 100%;
	text-align: left;
	font-size: 15px;
	line-height: 1;
	height: 38px;
	border-bottom: 1px solid #c3c3c3;
	transition: all 0.2s;
	padding: 0.25em;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
.dropdown-list:last-of-type{
	border-bottom: none;
}
.dropdown-list a{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
.dropdown-list:hover{
	background-color: #7072f036;
}
.shop-icon{
	width: 120px;
}


/*タブレット&スマホ*/
@media (max-width: 780px) {
	.shop-list{
		top:54px;
		height: auto;
	}
	.shop-list-content{
		position: relative;
		flex-direction: column;
		top: 0;
		left: 0;
		transform: unset;
		padding-top: 1%;
	}
	.shop-list-ttl-wrap{
		width: 	100%;
		height: 32px;
		font-size:2.8vw;
		line-height: 1;
		text-align: left;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		margin-bottom: 1%;
	}
	.shop-list-ttl-wrap::after{
		width: 12%;
		height: 0;
		padding-top:4%;
		border-right:none;
		border-bottom:none ;
		background: url(../img/icon_open.png) no-repeat;
		background-size: contain;
		transform: rotate(0deg) translateY(-50%);
		position: absolute;
		right: 2%;
		top: 50%;
	}
	.shop-list-ttl-wrap.active::after{
		background: url(../img/icon_close.png) no-repeat;
		background-size: contain;
	}

	.shop-list-ttl{
	width: 100%;
	margin-left: 0;
		margin-right: auto;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
	}
	.shop-list-ttl-balloon{
	width: 25%;
		letter-spacing: 0.02em;
		padding-left:0.1em;
		margin-bottom: 0;
		margin-right: 2%;
		white-space: nowrap;
	}
	.shop-list-ttl-p{
		white-space: nowrap;
	}
	.shop-list-ttl-p span{
		font-size: 1em;
	}
	.dropdown-nav-wrap{
		gap:calc(4% / 3);
		padding-left: 1%;
		padding-right: 1%;
		margin-bottom: 2%;
	}
	.dropdown-nav{
		width: 24%;
		height: 28px;
		font-size: min(4vw,14px);
		border: 1px solid #fff;
		padding: 0.25em 0;
		margin-bottom: 3px;
	}
	.shop-list-list-wrap {
		width: 100%;
		display: none;
	}

	.shop-list-list-wrap.active{
		display: block;
	}

	.dropdown-list{
		color: var(--color-a);
		font-size:3.2vw;
		height: 30px;
	}
	.shop-icon{
		width:24%;
	}

		.dropdown-nav:hover .dropdown-list-wrap{
			top: 27px;
			width: calc(417% + 8px);
		}
		.dropdown-nav:first-of-type:hover .dropdown-list-wrap,
		.dropdown-nav:nth-of-type(5):hover .dropdown-list-wrap,
		.dropdown-nav:nth-of-type(9):hover .dropdown-list-wrap{
			left: -1px;
		}
		.dropdown-nav:nth-of-type(2):hover .dropdown-list-wrap,
		.dropdown-nav:nth-of-type(6):hover .dropdown-list-wrap,
		.dropdown-nav:nth-of-type(10):hover .dropdown-list-wrap{
			left: calc(-1 * (106% + 2px));
		}
		.dropdown-nav:nth-of-type(3):hover .dropdown-list-wrap,
		.dropdown-nav:nth-of-type(7):hover .dropdown-list-wrap,
		.dropdown-nav:nth-of-type(11):hover .dropdown-list-wrap{
			left: calc(-1 * (212% + 4px) );
		}
		.dropdown-nav:nth-of-type(4):hover .dropdown-list-wrap,
		.dropdown-nav:nth-of-type(8):hover .dropdown-list-wrap{
			left: calc(-1 * (318% + 6px));
		}
}

/*タブレット&スマホ*/
@media (max-width: 580px) {
	.shop-list{
		top:46px;
	}
}


/*---------------------------------
fv イメージとh1
----------------------------------*/
.fv{
	position: relative;
	/* margin-top: 144px; */
	margin-top: 142px;
}
.fv h1{
	width: 100%;
	position: absolute;
	left: 0;
	top:0;
}
@media (max-width: 950px) {
	.fv{
		margin-top: 132px;
	}

}
@media (max-width: 780px) {
	.fv{
		margin-top: 54px;
	}
}




/*---------------------------------
fv-bottom
----------------------------------*/
.fv-bottom{
	position: relative;
	margin-top: -2%;
	color: #fff;
	margin-bottom: 80px;
}
.fv-bottom-drop{
	width: 8%;
	max-width: 50px;
	position: absolute;
	left: 50%;
	top:-1%;
	transform: translate(-50%,-50%);
}
.fv-bottom-content{
	border-radius: 15px 15px 0 0 ;
	padding: 3em;
}
.no-wwbp .fv-bottom-content{
	background: linear-gradient(to top,#00000000 0%,#000 100% ),url(../img/fv_bottom_content_bk.jpg);
	background-size: cover;
}
.webp .fv-bottom-content{
	background: linear-gradient(to top,#00000000 0%,#000 100% ),url(../img/fv_bottom_content_bk.webp);
	background-size: cover;
}

.fv-bottom h2{
	font-size: min(3.8vw,32px);
	text-align: center;
	margin-bottom: 50px;
	white-space: nowrap;
}
.fv-bottom-content .t-cap{
	text-shadow:0 0 4px #0000007a;
	text-align: left;
}
.fv-bottom-box{
	border-radius: 15px;
	margin-bottom: 8px;
	margin-top: 40px;
	padding: 1em;
}

.fv-bottom-box:nth-of-type(1){
	margin-top: 0;
}	
.fv-bottom-box.bronze{
	background: url(../img/fv_bottom_box_01_bk.jpg) no-repeat;
	background-size: 100% 100%;
}
.fv-bottom-box.silver{
	background: url(../img/fv_bottom_box_02_bk.jpg) no-repeat;
	background-size: 100% 100%;
}
.fv-bottom-box.gold{
	background: url(../img/fv_bottom_box_03_bk.jpg) no-repeat;
	background-size: 100% 100%;
}
.fv-bottom-box-ttl{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 2%;
}
.fv-bottom-box-ttl h3{
	width: 73%;
	margin-left: 2%;
	font-size: 28px;
	margin-bottom: 15px;
	text-shadow:0 0 4px #0000004f;
}
.fv-bottom-box-icon{
	width: 25%;
}
.fv-bottom-box h3 span{
	display: block;
	width: 100%;
	font-size: 0.8em;
	text-align: center;
	background-color: #fff;
	margin-bottom: 1%;
	padding: 5px;
	text-shadow:none;
}
.fv-bottom-box.bronze h3 span{
	color: #421314;
}
.fv-bottom-box.silver h3 span{
	color: #aaaaa5;
}
.fv-bottom-box.gold h3 span{
	color: #dba626;
}
.fv-bottom-box table{
	width: 100%;
}
.fv-bottom-box table tr{
	border-top: thin solid #fff;
}

.fv-bottom-box table th,
.fv-bottom-box table td{
	text-align: center;
	border-right: thin solid #fff;
	padding: 0.25em;
	font-size: 26px;
	line-height: 1;
	vertical-align:middle;
	text-shadow:0 0 4px #0000004f;
}
.fv-bottom-box table th{
	white-space: nowrap;
}
.fv-bottom-box table th:last-child,
.fv-bottom-box table td:last-child{
	border-right: none;
}
.fv-bottom-box table th:first-child{
	width: 30%;
}

.table-item{
    background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #fff 50%, #fff calc(50% + 0.5px), transparent calc(50% + 1px));
	position: relative;
}
.table-item-01,
.table-item-02{
	font-size: 0.7em;
	position: absolute;
}
.table-item-01{
	right: 2px;
	top: 2px;
}
.table-item-02{
	left: 2px;
	bottom: 2px;
}
.price-txt{
	position: relative;
	padding-left: 13%;
	font-size: min(2.8vw,28px);
	font-weight: 700;
	line-height: 1;
	margin-top: 20px;
	white-space: nowrap;
	color: #fff;
}
.price-txt::before{
	width:  5%;
	height: 80%;
	background-color: #fff;
	content: "";
	clip-path: polygon(0 20%, 60% 20%, 60% 0%, 100% 50%, 60% 100%, 60% 80%, 0 80%);
	position: absolute;
	left: 7%;
	top: 50%;
	transform: translateY(-50%);
}
.fv-bottom-price{
	padding: 3em;
	background-color: var(--color-a);
	border-radius: 0 0 15px 15px;
}
.price-annotation{
	margin-top: 0.5em;
}
.fv-bottom-price-link{
	width: fit-content;
	margin:40px auto ;
	position: relative;
}

.fv-bottom-price-link a{
	padding: 1em 2em;
	background: #fff;
	border-radius: 999px;
	color: var(--color-red);
	font-weight: 700;
	font-size: 18px;
	border: 4px solid var(--color-red);
	box-shadow: 0px 5px 2px #00000063;
	position: relative;
}
.fv-bottom-price-link a::after{
	content: "";
	width: 6%;
	height:0;
	padding-top: 6%;
	background-image: url(../img/icon_arrow_red.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: 4%;
	top:50%;
	transform: translate(0,-50%);
	transition: 0.2s;
}
.fv-bottom-price-link a:hover {
	background: #dfdfdf;
	box-shadow: 0px 2px 2px #00000063;
}
.fv-bottom-price-link a:hover::after{
	right: 3%;
}
/*タブレット*/

@media (max-width: 780px) {
	.fv-bottom{
		margin-top: 7%;
		margin-bottom: 40px;
	}
	.fv-bottom-content{
		padding: 2em 1em;
	}
	.fv-bottom-price{
		padding: 1em;
	}
	.fv-bottom h2{
		font-size: min(4.8vw,32px);
		margin-bottom: 20px;
	}
	.fv-bottom-box{
		margin-top: 30px;
		margin-bottom: 5px;
		padding: 0.8em;
	}
	.fv-bottom-box-ttl h3{
		font-size: 4vw;
	}
	.fv-bottom-box h3 span{
		padding: 2px;
	}
	.price-txt{
		position: relative;
		padding-left: 10%;
		font-size:  4.5vw;
		line-height: 1.2;
		margin-top: 3%;
	}
	.price-txt::before{
		width:  8%;
		left:0;
	}

	.fv-bottom-price{
		padding: 1em;
		background-color: var(--color-a);
		border-radius: 0 0 15px 15px;
	}
	.fv-bottom-price .t-cap{
		margin-top: 5px;
	}
	.fv-bottom-price-link a{
		font-size: 4vw;
	}
	
}
@media (max-width : 580px) {
	.fv-bottom{
		margin-bottom: 30px;
	}
	.fv-bottom-drop{
		top:-0.5%;
	}
	.fv-bottom h2{
		margin-bottom: 15px;
	}
	.fv-bottom-box{
		margin-top: 25px;
		margin-bottom: 3px;
	}
	.fv-bottom-box-ttl{
		flex-direction: column-reverse;
	}
	.fv-bottom-box-ttl h3{
		font-size: 6vw;
		width: 100%;
		text-align: center;
		margin-left: 0;
	}
	.fv-bottom-box-icon{
		width: 45%;
	}
		.fv-bottom-box table{
			width: 100%;
		}
		.fv-bottom-box table th:first-child{
			width: 30%;
		}
		.fv-bottom-box table th,
		.fv-bottom-box table td{
			font-size: 5.2vw;
		}
}

/*--------------------------------
 price-banner
---------------------------------*/
.price-banner-wrap{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 60px;
}
.price-banner{
	width: 48%;
	border-radius: 15px;
	overflow: hidden;
}
.price-banner img{
	height: auto;
}
.price-banner-ttl{
	font-size: min(3.8vw,32px);
	text-align: center;
	margin-bottom: 50px;
	white-space: nowrap;
	color: #fff;
}
.price-annotation {
	color: #fff;
}
/*タブレット*/

@media (max-width: 780px) {
	.price-banner-wrap{
		flex-direction: column;
		margin-bottom: 40px;
	}
	.price-banner-ttl{
		font-size: min(4.8vw,32px);
		margin-bottom: 20px;
	}
	.price-banner{
		width: 100%;
	}
	.price-banner:first-of-type{
		margin-bottom: 20px;
	}
}
/*--------------------------------
 sc-cta
---------------------------------*/
.sc-cta{
	width: 100%;
	padding-top: 80px;
	padding-bottom: 80px;
	background-size: auto auto;
	background-color: rgba(0, 127, 107, 1);
	background-image: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(0, 114, 96, 1) 10px, rgba(0, 114, 96, 1) 20px );
}
.cta-ttl{
	background-color: #fff;
	text-align: center;
	font-size: 28px;
	color: var(--color-a);
	padding: 0.5em 0 0.5em;
	line-height: 1;
	margin-bottom: 80px;
	position: relative;
}
.cta-ttl::after{
	content: "";
	width: 30px;
	height: 20px;
	background-color: #fff;
	clip-path: polygon(50% 100%, 0 0, 100% 0);
	position: absolute;
	left: 50%;
	bottom: -19px;
	transform: translatex(-50%);
}

.cta-wrap{
	width: 580px;
	height: auto;
	position: relative;
	margin: auto;
}

.cta-btn {
	width: 100%;
	border-radius: 8px;
	font-size: 100%;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	background: var(--color-b);
	box-shadow: 0 5px 0 #af6c39;
	transition: 0.2s;
	padding: 1.2em 0;
	color: #fff;
	font-size: 23px;
	font-weight: 700;
	position: relative;
}
.cta-btn::after{
	content: "";
	width: 5%;
	height:0;
	padding-top: 5%;
	background-image: url(../img/icon_arrow_wht.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: 4%;
	top:50%;
	transform: translate(0,-50%);
	transition: 0.2s;
}
.cta-btn-02{
	margin-top: 50px;
	background: var(--color-red);
	box-shadow: 0 5px 0 #910033;
}
.cta-btn:hover {
box-shadow: 0 2px 0 #af6c39;
transform: translateY(3px);
}
.cta-btn:hover::after{
	right: 3%;
}
.btn-icon{
	width: 1.5em;
	margin-right: 1%;
}
.btn-balloon {
	width: 90%;
	border-radius: 999px;
	border: solid 2px var(--color-b);
	background-color: #fff;
	font-size: 0.8em;
	padding: 0.5em 0;
	font-weight: 700;
	line-height: 1;
	position: absolute;
	top:0;
	left: 50%;
	transform: translate(-50%, -50%);
	color: var(--color-b);
}
.cta-btn-02 .btn-balloon{
	border: solid 2px var(--color-red);
	color: var(--color-red);
}
@media (max-width: 780px) {
	.sc-cta{
		padding-top: 10%;
		padding-bottom: 10%;
	}
	.cta-ttl{
		font-size:  4vw;
		margin-bottom: 10%;
	}
	.cta-ttl::after{
		width: 18px;
		height: 14px;
		bottom: -13px;
	}
	.cta-wrap{
		max-width: 580px;
		width: 90%;
	}
	.cta-btn {
		font-size: 3.4vw;
	}
	.cta-btn-02{
		margin-top: 8%;
	}
}


/*--------------------------------
各sectionの共通スタイル
---------------------------------*/
.sc-attention,
.sc-frow,
.sc-schedule,
.sc-oil,
.sc-howto,
.sc-detail{
	padding-top: 90px;
}
.attention-ttl-a,
.attention-ttl-b,
.sc-ttl,
.howto-ttl{
	font-size: min(3.8vw,34px);
}
.sc-ttl{
	color: var(--color-a);
	text-align: center;
}
.sc-ttl-icom{
	display: block;
	width: 20%;
	max-width: 120px;
	margin: 0 auto 20px auto;
}
.sc-ttl-lead{
	text-align: center;
	font-size:19px;
	font-weight: 500;
	margin-top: 20px;
	line-height: 1.6;
}
.sc-cainzauto,
.schedule-content{
	margin-top: 90px;
}

/*タブレット&スマホ*/
@media (max-width: 780px) {
	.sc-attention,
	.sc-frow,
	.sc-schedule,
	.sc-oil,
	.sc-detail{
		padding-top: 60px;
	}
	.sc-cainzauto,
	.schedule-content{
		margin-top: 60px;
	}
	.attention-ttl-a,
	.attention-ttl-b,
	.sc-ttl,
	.howto-ttl{
		font-size: min(5.8vw,38px);
	}
	.sc-ttl-icom{
		margin: 0 auto 15px auto;
	}
	.sc-ttl-lead{
		font-size:19px;
		margin-top: 15px;
	}
}
/*スマホ*/
@media (max-width: 580px) {
	.sc-attention,
	.sc-frow,
	.sc-schedule,
	.sc-oil,
	.sc-detail{
		padding-top: 40px;
	}
	.sc-cainzauto,
	.schedule-content{
	margin-top:30px;
	}
	.sc-ttl-icom{
		margin: 0 auto 8px auto;
	}
	.sc-ttl-lead{
		font-size:16px;
		margin-top: 10px;
	}
}


/*--------------------------------
sc-attention オイル交換の必要性
---------------------------------*/

.attention-wholewrap{
	background-color: var(--color-c);
	border-radius: 15px;
	overflow: hidden;
}
.attention-logo{
	width: 40%;
	max-width:260px;
	display: block;
	margin: 80px auto;
}
.attention-ttl-a,
.attention-ttl-b{
	color: var(--color-a);
	position: relative;
}
.attention-ttl-a{
	padding-bottom: 10px;
	border-bottom:solid 1px var(--color-gry) ;
}
.attention-ttl-a-02{
	margin-top: 140px;
}

.attention-ttl-b{
	margin-top: 80px;
	padding-bottom: 0.5em;
}
.attention-ttl-a img,
.attention-ttl-b img{
	position: absolute;
	bottom: 0;
}
.attention-ttl-a img{
	width: 14%;
	right: 1%;
}
.attention-ttl-b img{
	width: 19%;
	right: 2%;
}
.attention-content,
.attention-column-01{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
}
.attention-content{
	margin-top: 20px;
}
.attention-content-txt{
	width: 44%;
}
.attention-content-img{
	width: 50%;
	object-fit: cover;
}
.attention-content-txt{
	margin-top: -5px;
}
.attention-content-txt-01 p{
	margin-bottom: 1em;
}
.attention-content-txt-01:last-of-type p{
	margin-bottom: 0;
}
.attention-column-01,
.attention-column-03{
	background-color: var(--color-a);
	border-radius: 15px;
	padding: 1.5em;
}
.attention-column-01-p{
	width: 45%;
	color: #fff;
}
.attention-column-01-list{
	margin-top: 10px;
	margin-bottom: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.attention-column-01-detail{
	width: 50%;
	background-color: var(--color-yel);
}
.attention-column-01-detail-p{
	color: var(--color-a);
	padding: 1.2em;
	letter-spacing: normal;
}
.attention-column-02{
	margin-top: -20px;
	margin-bottom: 10px;
}
.attention-column-03-p{
	color: #fff;
}
.attention-column-03 picture{
	display: block;
	margin: 10px 0;
}
.attention-bottom-content{
	background-color: var(--color-yel);
	margin-top: 110px;
	position: relative;
	padding: 2em;
}
.attention-bottom-content-img{
	width: 18%;
	position: absolute;
	bottom:0;
	left: 8%;
}
.attention-bottom-content-p{
	font-size: min(2.3vw,22px);
	font-weight: 700;
	margin-left: 30%;
}
.attention-column-03 .item-02,
.attention-column-03 .item-03{
	margin-top: 1.5em;
	padding-top: 1.5em;
	border-top: 1px solid #fff;
}
/*タブレット&スマホ*/
@media (max-width: 780px) {
	.attention-logo{
		margin: 50px auto;
	}
	.attention-ttl-b{
		margin-top: 40px;
		padding-bottom: 0.25em;
	}
	.attention-ttl-a-02{
		margin-top: 80px;
	}
	.attention-ttl-a img{
		width: 23%;
		max-width: 140px;
		right: 0;
	}
	.attention-ttl-b img{
		width: 40%;
		max-width: 220px;
	}
	.attention-content,
	.attention-column-01{
		flex-direction: column;
	}
	.attention-content,
	.attention-column-01-detail{
		margin-top: 20px;
	}
	.attention-content-txt,
	.attention-content-img,
	.attention-column-01-p,
	.attention-column-01-detail{
		width: 100%;
	}
	.attention-content-txt{
		margin-top: 0;
	}
	.attention-content-img{
		margin-top: 20px;
	}


	.attention-column-03 picture{
		margin: 8px 0;
	}
	.attention-bottom-content{
		margin-top: 40px;
		padding: 1em;
	}
	.attention-bottom-content-img{
		width: 30%;
		left: 50%;
		transform: translateX(-50%);
	}
	.attention-bottom-content-p{
		font-size: 19px;
		margin-left: 0;
		padding-bottom: 40%;
	}
	
}
/*スマホ*/
@media (max-width: 580px) {
	.attention-logo{
		margin: 20px auto;
	}
	
	.attention-ttl-a{
		padding-bottom: 5px;
	}
	.attention-ttl-a-02{
		margin-top: 60px;
	}
	.attention-content,
	.attention-content-img{
		margin-top: 10px;
	}
	.attention-ttl-b{
		margin-top: 20px;
	}

	.attention-column-01,
	.attention-column-03
	{
		padding: 1em;
	}

	.attention-bottom-content{
		margin-top: 20px;
	}
	.attention-bottom-content-p{
		font-size: 16px;
	}
}

/*--------------------------------
sc-info ショップインフォメーション
---------------------------------*/
.frow-box-wrap{
	margin-top: 50px;
}
.frow-box{
	background-color: var(--color-c);
	border-radius: 15px;
	padding: 1em;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	margin-bottom: 40px;
}
.frow-box:last-of-type{
	padding-bottom: 2em;
}
.frow-box-annotation{
	position: absolute;
	bottom: 8px;
	left: 3%;
	font-size:min(1.9vw,15px) ;
}
.frow-box::after{
	content:"";
	width: 80px;
	height: 40px;
	background-color: var(--color-c);
	position: absolute;
	bottom: -40px;
	left: 50%;
	transform: translatex(-50%);
	clip-path: polygon(50% 100%, 0 0, 100% 0);
}
.frow-box:last-of-type{
	margin-bottom: 0;
}
.frow-box:last-of-type::after{
	display: none;
}
.frow-box-no{
width: 20%;
}
.frow-box-p{
	width: 33%;
	font-size: 19px;
	color: var(--color-a);
	margin-top: 10px;
}
.frow-box-img{
	width: 33%;
	border-radius: 10px;
}
.frow-box-img-coment{
	width: 21%;
	position: absolute;
	right: 18%;
	top: 3%;
}
.footer-price {
	margin-bottom: 80px;
}
/*タブレット&スマホ*/
@media (max-width: 780px) {
	.frow-box-wrap,
	.frow-box{
		margin-bottom: 30px;
	}
	.frow-box::after{
		width: 60px;
		height: 30px;
		bottom: -30px;
	}
	.frow-box-p{
		margin-top: 0;
	}
}
/*スマホ*/
@media (max-width: 580px) {
	.frow-box{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.frow-box-no{
		width: 40%;
		}
		.frow-box-p{
			width: 100%;
			font-size: 15px;
			margin-top: 10px;
		}
		.frow-box-img{
			width: 100%;
			margin-top: 10px;
		}
		.frow-box-img-coment{
			width: 21%;
			position: absolute;
			right: 18%;
			top: 3%;
		}
		.frow-box-img-coment{
			width: 55%;
			right: auto;
			left: -5%;
			top: auto;
			bottom: 30%;
		}
		.frow-box:last-of-type{
			padding-bottom: 4em;
		}
		.frow-box-annotation{
			font-size:2.8vw ;
			text-align: left;
		}
}
/*--------------------------------
sc-cainzauto カインズオート
---------------------------------*/
.sc-cainzauto{
	background-color: var(--color-a);
}
.cainzauto-wrap{
display: flex;
flex-direction: row;
}
.cainzauto-img{
	width: 50vw;
	margin-left: calc((50vw - 50%) * -1);
	position: relative;
	overflow: hidden;
}
.cainzauto-img picture{
	width: 100%;
	position: absolute;
	top:50%;
	transform: translateY(-50%);
}
.cainzauto-content{
	width: 50%;
}
.cainzuauto-txt{
	color: #fff;
	margin-left: 10%;
	padding-top: 40px;
}
.cainzuauto-txt h3{
	font-size: min(4vw,30px);
	margin-bottom: 20px;
}
.cainzsuto_img_sub{
	width: 100%;
	position: relative;
	right: -6%;
	margin-top: 30px;
	margin-bottom: 10px;
}
/*タブレット&スマホ*/
@media (max-width: 780px) {
	.cainzauto-img picture{
		width: 135%;
	}
}
/*タブレット&スマホ*/
@media (max-width: 580px) {
	.cainzauto-wrap{
		flex-direction: column;
		}
		.cainzauto-img{
			width: 101vw;
			margin-left:-6%;
		}
		.cainzauto-img picture{
			width: 100%;
			position: static;
			transform:none;
		}
		.cainzauto-content{
			width: 100%;
		}
		.cainzuauto-txt{
			margin-left: 0;
			padding-top: 20px;
		}
		.cainzuauto-txt h3{
			font-size: min(6vw,30px);
			margin-bottom: 10px;
			text-align: center;
		}
		.cainzsuto_img_sub{
			display: block;
			width: 112%;
			position: static;
			margin: 10px -6% 10px -6%;
		}
}
/*--------------------------------
sc-schedule schedule
---------------------------------*/
.schedule-content{
	position: relative;
}
.schedule_img{
	position: absolute;
	width: 22%;
	border-radius: 6px;
}
.schedule_img_01{
	top:13%;
	left: 42%;
	transform: rotate(-8deg);
}
.schedule_img_02{
	top:34%;
	left: 27%;
}
.schedule_img_03{
	top:40%;
	left: 51%;
	transform: rotate(-8deg);
}
.schedule_img_04{
	top:56%;
	left: 39%;
	transform: rotate(4deg);
}
.schedule_img_05{
	top:78%;
	left: 52%;
	transform: rotate(-6deg);
}


/*--------------------------------
sc-oil オイルの種類
---------------------------------*/
.sc-oil h2{
	margin-bottom: 60px;
}
.oil-box{
	border-radius: 15px;
	margin-top: 40px;
	padding: 2em;
	margin-bottom: 8px;
}
.oil-box:nth-of-type(1){
	margin-top: 0;
}
.oil-box.bronze{
	background: url(../img/oil_box_01_bk.jpg) no-repeat;
	background-size: 100% 100%;
}
.oil-box.silver{
	background: url(../img/oil_box_02_bk.jpg) no-repeat;
	background-size: 100% 100%;
}
.oil-box.gold{
	background: url(../img/oil_box_03_bk.jpg) no-repeat;
	background-size: 100% 100%;
}
.oil-box-content-wrap{
	display: flex;
	flex-direction: row;
}
.oil-box-name{
	width: 30%;
	text-align: center;
}
.oil-box-content{
	width: 65%;
	margin-left: 5%;
}

.oil-box-name img{
	display: block;
	width: 100%;
	margin-top: 10px;
}
.oil-box-name h3{
	width: 100%;
	background-color: #fff;
	font-size: 24px;
	margin-bottom: 15px;
	padding: 5px;
}
.oil-box-content h3,
.oil-box table{
	color: #fff;
	text-shadow:0 0 4px #0000004f;
}
.oil-box-content h3{
	font-size: 29px;
	padding-bottom: 10px;
	border-bottom:dotted 2px #fff;
	margin-bottom: 10px;
	white-space: nowrap;
}
.oil-box.bronze .oil-box-name h3{
	color: #421314;
}
.oil-box.silver .oil-box-name h3{
	color: #aaaaa5;
}
.oil-box.gold .oil-box-name h3{
	color: #dba626;
}
.oil-box-content{
	width: 65%;
}
.oil-box table{
	width: 100%;
	margin-top: 10px;
}
.oil-box table tr{
	border-bottom: thin solid #fff;
}
.oil-box table tr:last-child{
	border-bottom: none;
}
.oil-box table th,
.oil-box table td{
	text-align: center;
	border-right: thin solid #fff;
	padding: 0.25em;
	font-size: 26px;
	line-height: 1;
	vertical-align:middle;
	text-shadow:0 0 4px #0000004f;
}
.oil-box table th:last-child,
.oil-box table td:last-child{
	border-right: none;
}
.oil-box table th:first-child{
	width: 20%;
}
.oil-box table caption{
	border: thin solid #fff;
	text-align: center;
	padding: 2px;
	font-size: 24px;
}
/*タブレット&スマホ*/
@media (max-width: 780px) {
	.sc-oil h2{
		margin-bottom: 30px;
	}
	.oil-box{
		margin-top: 30px;
		margin-bottom: 5px;
		padding: 2em;
	}

	.oil-box-content-wrap{
		flex-direction: column;
	}
	.oil-box-name{
		width: 100%;
	}
	.oil-box-name img{
		width: 45%;
		max-width: 220px;
		margin-left: auto;
		margin-right: auto;
	}
	.oil-box-content{
		width: 100%;
		margin-left: 0;
	}
	.oil-box-content h3{
		font-size:19px;
		text-align: center;
	}
	.oil-box table caption{
		font-size: 18px;
	}
}
/*スマホ*/
@media (max-width: 580px) {
	.sc-oil h2{
		margin-bottom: 20px;
	}
	.oil-box{
		margin-top: 25px;
		margin-bottom: 3px;
		padding: 0.8em;
	}

	.oil-box-name h3{
		font-size: 6vw;
		margin-bottom: 10px;
	}
	.oil-box-content h3{
		font-size: 5.7vw;
		padding-bottom: 5px;
		margin-bottom: 5px;
		margin-top: 5px;
	}
	.oil-box-content p,
	.oil-box table caption{
		font-size: 15px;
	}
	.oil-box table th,
.oil-box table td{
	font-size: 5.2vw;
}
	.oil-box-content p{
		color: #fff;
		text-shadow:0 0 4px #0000004f;
	}
}

/*--------------------------------
sc-detail メンバー会員、予約
---------------------------------*/
.detail-box{
	border: 3px solid var(--color-a);
	padding: 2em 3em;
	margin-bottom: 60px;
}
.detail-box:first-of-type{
	padding-bottom: 0;
}
.detail-box h2{
	text-align: center;
	font-size: 26px;
	background-color: var(--color-a);
	color: #fff;
	padding: 0.25em;
}
.detail-box p{
	margin-top: 20px;
	color: var(--color-a);
}
.detail-box-membership-wrap,
.detail-box-membership-content dl{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}
.detail-box-membership-wrap{
	margin-top: 30px;
}
.detail-box-membership-wrap img{
	width: 35%;
}
.detail-box-membership-content{
	width: 60%;
	padding-bottom: 2em;
}
.detail-box-membership-content h3{
	font-size: 19px;
	color: var(--color-a);
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: solid 1px var(--color-a);
}
.detail-box-membership-content dl dt,
.detail-box-membership-content dl dd{
	line-height: 1;
	margin-bottom: 1em;
	color: var(--color-a);
}
.detail-box-membership-content dl dt{
	width: 80px;
	margin-right: 5px;
	font-size: 16px;
	text-align: center;
	border: 1px solid var(--color-bk);
	border-radius: 4px;
	padding: 0.2em;
	letter-spacing: 0.25em;
}
.detail-box-membership-content dl dd{
	font-size: 18px;
	line-height: 1.2;
	width: calc(100% - 85px);
	letter-spacing: normal;
}
.detail-box-membership-content dl dd ul li{
	margin-bottom: 0.5em;
}
/*タブレット&スマホ*/
@media (max-width: 780px) {
	.detail-box{
		padding: 1em 2em;
		margin-bottom: 40px;
	}
	.detail-box h2{
		font-size: 24px;
	}
	.detail-box p,
	.detail-box-membership-wrap{
		margin-top: 15px;
	}
	.detail-box-membership-content{
		padding-bottom: 1em;
	}
	.detail-box-membership-content dl dt{
		font-size: 15px;
	}
	.detail-box-membership-content dl dd{
		font-size: 16px;
	}
}
/*タブレット&スマホ*/
@media (max-width: 580px) {
	.detail-box{
		padding: 1em;
		margin-bottom: 20px;
	}
	.detail-box-membership-wrap{
	flex-direction: column;
	}
	.detail-box h2{
		font-size: 5.2vw;
	}
	.detail-box-membership-wrap img{
		width: 50%;
		margin-left: auto;
		margin-right: auto;
	}
	.detail-box-membership-content{
		width: 100%;
		padding-bottom: 0;
	}
	.detail-box-membership-content dl dd{
		font-size: 15px;
	}
	.detail-box-membership-content h3{
		font-size: 15px;
		text-align: center;
	}
}
/*--------------------------------
footer-price
---------------------------------*/
.footer-price{
	background-color: var(--color-a);
	margin-bottom: 0;
}

/*--------------------------------
footer
---------------------------------*/

/* footer{
background-color: 	#333333;
text-align: center;
}

.footer-img-grid{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}
.footer-logo{
	width: 180px;
	margin-top: 30px;
}
footer p{
	color: #fff;
	text-align: center;
}
/*スマホ*/
@media (max-width : 580px) {
	.footer-logo{
		width: 120px;
		margin-top: 10px;
	}		
} 