@charset "UTF-8";

/*-----------------------------------------------------
  共通パーツ
----------------------------------------------------- */

:root{
	--color-R:#D80A13;
	--color-B-L:#F6F9FF;
	--color-hover:#39b6b6;
	--color-tenpo_table:#E5F9F9;
	--grad-180deg:linear-gradient(180deg, rgba(0,200,200,1) 0%, rgba(1,51,150,1) 100%);
	--font-28:clamp(16px, 4vw, 28px);
	--font-24:clamp(16px, 4vw, 24px);
	--font-20:clamp(16px, 3vw, 20px);
	--font-18:clamp(15px, 3vw, 18px);
	--font-16:clamp(14px, 3vw, 16px);
	--font-14:clamp(12px, 3vw, 14px);
}
/*
--color-B:var(--blue-color);
*/
.col_R{color:var(--color-R);}
.col_B{color:var(--blue-color);}
a.col_B.underline,
a.col_B:hover{text-decoration: underline;}
a.col_B.underline{transition:color 0.2s ease;}
a.col_B.underline:hover{color:var(--color-hover);}

h4.grad_bar,
h4.grad_maru{
	/* margin-bottom: 30px; */
	margin-bottom: 1em;
	color: var(--blue-color);
	font-size: clamp(20px, 2.5vw, 25px);	
	font-weight: 500;
	line-height: 1.4;
}
h4.grad_bar{
	border-left: 3px solid;
	border-image: linear-gradient(180deg, var(--blue-color) 0%, var(--color-hover) 100%) 1;
	padding-left: 15px;
}
h4.grad_maru{gap:15px; display: flex; align-items: center;}
h4.grad_maru:first-of-type{counter-reset: number 0;}
h4.grad_maru::before{
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
	background: var(--grad-180deg);
  color: #FFF;
	font-size: var(--font-18);
  width: calc(1em * 45 / 18);
  height: calc(1em * 45 / 18);
  border-radius: 100%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
img[src*="/intro_bnr."]{
	object-fit: cover;
	border-radius: min(1rem,3vw);
	max-height: 250px;
}
img[src*="/intro."],
img.intro_photo{
	object-fit: cover;
	border-radius: min(1rem,3vw);
}
a[btn="pay"]{
	width:min(476px,100%);
	min-height: 78px;
	border:solid 1px var(--blue-color);
	color: var(--blue-color);
	transition: border-color 0.2s ease,color 0.2s ease;
	text-align: center;
	font-size: var(--font-16);
	font-weight: 700;
	line-height: 1.6em;
	position: relative;
	display: flex; justify-content: center; align-items: center;
}
a[btn="pay"] img{
	width:auto;
	margin: 0 0.5em;
	transition: opacity 0.2s ease;
}
a[btn="pay"] svg{
	position: absolute;
	top:0;
	bottom:0;
	right:1em;
	margin: auto;
}
a[btn="pay"] svg *{stroke:var(--blue-color); transition: stroke 0.2s ease;}
a[btn="pay"]:hover{border-color:var(--color-hover); color:var(--color-hover);}
a[btn="pay"]:hover img{opacity:0.5;}
a[btn="pay"]:hover svg > *{stroke:var(--color-hover);}
a[btn="faq"]{
	box-sizing: border-box;
	min-width: min(280px,100%);
	min-height: 60px;
	border:solid 1px var(--blue-color);
	background-color: #FFF;
	transition: background-color 0.2s ease, color 0.2s ease;
	padding: 0.5em 1em;
	padding-left: 3em;
	color: inherit;
	font-size: var(--font-16);
	font-weight: 700;
	line-height: 1.6em;
	position: relative;
	display: flex; align-items: center;
}
a[btn="faq"] img[src*="-pdf."]{width:35px; margin-left: 0.5em;}
a[btn="faq"] img[src*="-dl."]{width:25px; margin-left: 0.5em;}
a[btn="faq"] svg{
	position: absolute;
	top:0;
	bottom:0;
	left:1em;
	margin: auto;
}
a[btn="faq"] svg *{stroke:var(--blue-color); transition: stroke 0.2s ease;}
a[btn="faq"]:hover{background-color: #000; color:#FFF;}
a[btn="faq"]:hover svg > *{stroke:#FFF;}
a[btn="img"]{
	position: relative;
	display: flex; justify-content: center; align-items: center;
	min-width: min(300px,100%);
	aspect-ratio: 300 / 56;
	overflow: hidden;
	border-radius: 0.25em;
}
a[btn="img"] img.bg{
	position: absolute;
	inset: 0;
	width: 100%; height: 100%;
	object-fit: cover; object-position: center 25%;
	display: block;
	transform-origin: center; transition: transform .6s ease;}
a[btn="img"] .txt_wrap{position: relative; z-index: 3; gap:1em; display: flex; align-items: center; }
a[btn="img"] img.icon{display: block;}
a[btn="img"] img.icon[src*="_search."]{max-width:30px;}
a[btn="img"] p{font-size:var(--font-16); font-weight: 700; color: #fff;}
a[btn="img"]::before{ content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.5); opacity: 0; transition: opacity .6s ease; z-index: 2; }
@media (hover: hover) and (pointer: fine) {
  a[btn="img"]:hover img.bg{ transform: scale(1.1); }
  a[btn="img"]:hover::before{ opacity: 1; }
}

.prewrap,.prewrap *{white-space: pre-wrap;}
.textL{text-align: left;}
.textR{text-align: right;}
.textC{text-align: center;}
.textJ{text-align: justify;}
@media only screen and (max-width: 980px){
	.W980_textJ{text-align: justify;}
}
.bold{font-weight: 700;}
.flex_center{display: flex; justify-content: center; align-items: center;}
.flex_center.col{flex-direction: column;}
.flex_wrap{gap:1em; display: flex; flex-wrap: wrap;}

.frame_B_L{
	box-sizing: border-box;
	background-color:var(--color-B-L);
	border-radius: 0.75rem;
}
.frame_B_L.labelbox{
	position: relative;
	padding: 2em;	
	gap: 1em 5%;
	display: flex; justify-content: center;
}
.frame_B_L.labelbox label{
	background: #41bbb9; color: #fff;
	font-size: 10px;
	border-radius: 1em 0; padding: 1em; min-width: 5em;
	position: absolute;	top: 0; left: 0;
	display: flex; justify-content: center; align-items: center;
}
.frame_B_L.labelbox label img{width:auto;}
.frame_B_L.labelbox > div{max-width: 100%;}
.frame_B_L.labelbox > div.flexC{display: flex; justify-content: center; align-items: center;}
.frame_B_L.labelbox > div > img{border-radius: 0.75rem;}
.frame_B_L.labelbox h3{
	color: var(--blue-color);
	font-size: var(--font-20);
	font-weight: 500;
}
.frame_B_L.labelbox p{color:#333;}
@media only screen and (min-width: 1201px){
	.frame_B_L.labelbox{padding-left: calc(1em * 70 / 16);}
}
@media only screen and (max-width: 1200px){
	.frame_B_L.labelbox{
		padding: 1.5em 2em;
		flex-direction: column;
	}
	.frame_B_L.labelbox label{zoom:0.8;}
	.frame_B_L.labelbox h3 br{display: none;}
	.frame_B_L.labelbox > div{width:auto!important;}
}

.c-button-more{ display: block; text-align: center; align-items: center; padding: 15px 0; border: 2px solid var(--blue-color); border-radius: 9999px; background-color: #fff; color: var(--blue-color); font-size: var(--font-18); font-weight: 700; /* letter-spacing: 0.15em; */ text-decoration: none; transition: all 0.3s ease; max-width: 300px; margin: 0 auto; position: relative;}
.c-button-more[btn="oval"]{ box-sizing: border-box; padding: 15px 2em; margin: 0; min-width: min(300px,100%); aspect-ratio: 300 / 56; }
.c-button-more svg{ width: 9px; height: auto; transition: all 0.3s ease; position: absolute; right: 5%; top: 0; bottom: 0; margin: auto; }
/* .c-button-more svg *{stroke:var(--blue-color);} */
.c-button-more:hover,
.c-button-more.current{ background-color: var(--blue-color); color: #fff; }
.c-button-more span { vertical-align: 3px; }
a:not([href]).c-button-more{cursor: pointer;}

.flex__inner{ display: flex; align-items: flex-start; justify-content: space-between; gap: clamp(20px, 5vw, 40px); max-width: 1200px; margin: 0 auto; }
.flex__inner h3.intro { font-family: var(--font-Mincho-B1); font-weight: 800; font-size: var(--font-28); line-height: 1.6; color: var(--blue-color); margin-bottom: 40px; }
.flex__image img { width: 100%; height: auto; display: block; }
.flex__image img ~ *{display: block; margin-top: 1rem;}
.flex__content { color: #1c2b3b; }
@media only screen and (min-width: 981px) {
	.flex__inner .flex__image{flex: 1 1 45%;}
	.flex__inner[i="34"] .flex__image{flex: 1 1 34%;}
	.flex__inner[i="40"] .flex__image{flex: 1 1 40%;}
	.flex__inner[i="48"] .flex__image{flex: 1 1 48%;}
	.flex__inner .flex__content{flex: 1 1 55%;}
	.flex__inner[c="48"] .flex__content{flex: 1 1 48%;}
	.flex__inner[c="56"] .flex__content{flex: 1 1 56%;}
	.flex__inner[c="62"] .flex__content{flex: 1 1 62%;}
}
@media only screen and (max-width: 980px) {
	.flex__inner{ flex-direction: column; gap: 30px; }
	.flex__inner h3.intro {margin-bottom: 20px;}
  .flex__image, .flex__content{ flex: 1 1 100%; }
}

.contents_area:first-child:last-child{width:100%; margin: auto;}

.contents_area ul.dot li{
	font-size: var(--font-16);
	line-height: 1.6em;
	position: relative;
	padding-left: 1em;
}
.contents_area ul.dot li::before{
	content:'●';
	display: inline-block;
	position: absolute;
	top:0;
	left:0;
	transform: scale(0.3);
}
.contents_area ul.dot li + li{margin-top: 0.5em;}
.contents_area ul.dot.num li{padding-left: 1.5em;}
.contents_area ul.dot.num li::before{transform: none;}
.contents_area ul.dot.num li:nth-of-type(1)::before{content:'①';}
.contents_area ul.dot.num li:nth-of-type(2)::before{content:'②';}
.contents_area ul.dot.num li:nth-of-type(3)::before{content:'③';}
.contents_area ul.dot.num li:nth-of-type(4)::before{content:'④';}
.contents_area ul.dot.num li:nth-of-type(5)::before{content:'⑤';}
.contents_area ul.dot.num li:nth-of-type(6)::before{content:'⑥';}
.contents_area ul.dot.num li:nth-of-type(7)::before{content:'⑦';}
.contents_area ul.dot.num li:nth-of-type(8)::before{content:'⑧';}
.contents_area ul.dot.num li:nth-of-type(9)::before{content:'⑨';}
.contents_area ul.dot.num li:nth-of-type(10)::before{content:'⑩';}

.tenpo_table{overflow-x: auto;}
.tenpo_table table{
	border: solid 1px var(--color-tenpo_table);
	border-collapse: collapse;
	background-color: #FFF;
	width:100%;
}
.tenpo_table table tr > *{
	border: solid 1px var(--color-tenpo_table);
	text-align: left;
	vertical-align: middle;
	padding: 1em;
	font-size: clamp(12px, 3vw, 14px);
	line-height: 1.6em;
}
.tenpo_table table thead tr > *{
	background-color:var(--color-tenpo_table);
	min-width: 4em;
}
.tenpo_table table a{color:inherit; transition: color .2s ease;}
.tenpo_table table a:hover{color: var(--color-hover);}
.tenpo_table table a[href*="http"]::after{ content: ''; display: inline-block; background: url("../img/common/icon_link.svg") no-repeat; background-size: contain; width: 15px; height: 12px; margin-left: 5px; }

.tenpo_list{
	padding-bottom: min(2em,9%);
	border-bottom: solid 1px #B2B2B2;
}
.tenpo_list + .tenpo_list{margin-top: min(3em,9%);}
.tenpo_list dl{
	gap:2em 2%;
	display: flex;
	flex-wrap: wrap;
}
.tenpo_list dl dd{width: 32%;}
.tenpo_list dl dd > img{
	border-radius: 0.75rem;
	object-fit: cover;
	max-height: 200px;
	width:100%;
}
.tenpo_list dl dd .title{
	margin: 1em 0;
	font-size: var(--font-18);
	font-weight: 500;
}
.tenpo_list dl dd .title a{color:var(--blue-color); transition: color .2s ease;}
.tenpo_list dl dd .title a:hover{color: var(--color-hover);}
.tenpo_list dl dd .title a::after{ content: ''; display: inline-block; background: url("../img/common/icon_link.svg") no-repeat; background-size: contain; width: 15px; height: 12px; margin-left: 5px; }
.tenpo_list dl dd .text{font-size: var(--font-16); line-height: 1.6em;}
.tenpo_list dl dd .text span{display: inline-block; min-width: 4em;}
@media screen and (max-width: 1200px){
	.tenpo_list dl{gap:2em 3%;}
	.tenpo_list dl dd{width: 48.5%;}
	.tenpo_list dl dd > img{max-height: none;}
}
@media screen and (max-width: 1024px){}
@media screen and (max-width: 980px){}
@media screen and (max-width: 600px){
	.tenpo_list dl dd{width: 100%;}
	.tenpo_list dl dd > img{max-height: calc(1vw * 220 / 3.75);}
}

.loan_list{}
.loan_list > *{line-height: 1.6em;}
.loan_list > h4{font-size: var(--font-18); font-weight: 500;}
.loan_list > h4 ~ h4{margin-top: 2em;}
.loan_list > div{
	margin-top: 1em;
	padding-left: 2em;
	font-size: var(--font-16);
	gap:1em 5em;
	display: flex;
	flex-wrap: wrap;
}
.loan_list a{color:inherit;text-decoration: underline; transition: color .2s ease;}
.loan_list a:hover{color: var(--color-hover);}

.mitsumori_set{display: flex;justify-content: space-between; gap:40px ;margin: 30px 0;}
.mitsumori_set h3{font-family: var(--font-Mincho-B1); font-weight: 800; font-size: clamp(18px, 3.7vw, 30px); color: var(--blue-color); padding-bottom: 5px; margin-bottom: 10px;}
.mitsumori_set p{font-size: var(--font-14);}
.mitsumori_set p.bluebox{display: block; background: #f5fbff; padding: 15px; color:var(--blue-color); margin: 20px 0;}
@media screen and (min-width:627px){
	.mitsumori_set > *{width: 50%;}
}
@media screen and (max-width:626px){
	.mitsumori_set{display: flex;justify-content: space-between; flex-direction: column; gap:40px;margin: 60px 0;}
}
.mitsumori_contact{background:#f5fbff; padding: 35px; margin-top: min(90px,15%);}
.mitsumori_contact h3{font-size: 1.3rem; font-weight: 600;color:var(--blue-color);text-align: center;padding-bottom: 20px;}
.mitsumori_contact h4{background:var(--blue-color); color: #fff; font-size: var(--font-16); font-weight: 600; text-align: center; padding: 8px 20px;border-radius: 12px 12px 0 0 ;}
.mitsumori_contact .inner{background: #fff;border-radius: 12px;}
.mitsumori_contact .info{display: flex; justify-content: center; align-items: center; gap:20px 50px; padding: 20px;}
.mitsumori_contact .info + .info{padding-top: 0;}
.mitsumori_contact .flex_center .info{ width:min(41em, 100%); flex-wrap: wrap; justify-content: flex-start; }
.mitsumori_contact p{display: flex;justify-content: center; align-items: center; line-height: 1;}
.mitsumori_contact p[t]{font-size: 1.1rem; line-height: 1;}
.mitsumori_contact p[t="TEL"]{font-size: clamp(1.5rem, 3vw, 1.9rem); font-weight: 600;}
.mitsumori_contact p[t]::before{
	box-sizing: border-box;
	content: attr(t);
	display: inline-block;
	border: 1px solid var(--blue-color);
	color: var(--blue-color);
	padding: 6px 18px;
	font-size: 1rem;
	margin-right: 1rem;
	font-weight: 500;
}
.mitsumori_contact p[t*="TEL"]::before{padding: 9px 25px;}
.mitsumori_contact p[t*="受付時間"]::before{background: var(--blue-color); color: #fff;}
@media screen and (min-width:981px) and (max-width:1150px){
	.mitsumori_contact .flex_center .info{width:min(19em, 100%);}
}
@media screen and (max-width:820px){
	.mitsumori_contact .flex_center .info{width:min(19em, 100%);}
}
@media screen and (max-width:480px){
	.mitsumori_contact p{width: 100%; text-align: center; gap: 10px; flex-direction: column; }
	.mitsumori_contact p[t]::before{width: 100%; margin: 0; }
}

.anchor{position: relative;}
.anchor > *{position: absolute; top: calc(var(--fixed-header-height) * -1);}

/*-----------------------------------------------------
  スタイル派生
----------------------------------------------------- */
.pages_head.rev{background: linear-gradient(270deg, rgba(1,51,150,1) 0%, rgba(1,198,202,1) 100%);}
.pages_head.g_em{background: linear-gradient(90deg, rgba(43,198,150,1) 0%, rgba(65,214,197,1) 100%);}
.pages_head.c_em{background: linear-gradient(90deg, rgba(16,166,221,1) 0%, rgba(3,204,196,1) 100%);}
.scroll_wrap{gap: 2em;}
.scroll_wrap:not(.trim) img{height:90px;}
.scroll_wrap.trim{
	overflow: hidden;
	max-height: 90px;
}
.scroll_wrap.trim img{
	object-fit: cover;
	object-position: center 60%;
	max-height: calc(90px * 11 / 6);
}
@media only screen and (max-width: 600px){
	.scroll_wrap{gap: calc(2em * 5 / 9);}
	.scroll_wrap.trim{max-height: 50px;}
	.scroll_wrap.trim img{max-height: calc(50px * 11 / 6);}
}

@media only screen and (min-width: 601px){
	.related__grid.col2{grid-template-columns: repeat(2, minmax(240px, 1fr));}
}

.blk.nomgnB,
.contents_area.nomgnB .blk:last-child{margin-bottom: 0;}

hr.related{
	padding: 0;
	border: none;
	border-top: 1px solid #B2B2B2;
}

h3.aco{ gap: 0.5em; display: flex; justify-content: space-between; align-items: flex-end; }
h3.aco .btn{
	/*
	border: solid 1px var(--blue-color); background-color: #FFF;
	border-radius: 100%;
	*/
	font-size: 1em;
	width: 1em; min-width: 1em; height: 1em;
	cursor: pointer;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}
h3.aco .btn::before,
h3.aco .btn::after{
	content:'';
	display: block;
	background-color: var(--blue-color);
	width:2px;
	height:2px;
	position: absolute;
	margin: auto;
}
h3.aco .btn::before{width:75%;}
h3.aco .btn::after{height:75%;}
h3.aco.active .btn::after{display: none;}
h3.aco ~ .tenpo_table{display: none;}

/*-----------------------------------------------------
  23:各種決済方法のご案内
----------------------------------------------------- */
.contents_area.pay .btn_list{
	gap: 25px min(12.5px,4%);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.contents_area.pay .btn_list a{
	width: min(190px, 48%);
	box-sizing: border-box;
	border:solid 1px var(--blue-color);
	border-radius: 1em;
	padding: 1em;
	font-size: var(--font-16);
	font-weight: 700;
	color: var(--blue-color);
	transition: border-color 0.2s ease,color 0.2s ease;
	gap:1em;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.contents_area.pay .btn_list a img{
	object-fit: contain;
	height:91px;
	transition: opacity 0.2s ease;
}
.contents_area.pay .btn_list a svg > *{
	stroke:var(--blue-color);
	transition: stroke 0.2s ease;
}
.contents_area.pay .btn_list a:hover{border-color:var(--color-hover); color:var(--color-hover);}
.contents_area.pay .btn_list a:hover img{opacity: 0.5;}
.contents_area.pay .btn_list a:hover svg > *{stroke:var(--color-hover);}
.contents_area.pay #sec01 .local_flex1{
	margin-top: min(3em,9%);	
	margin-bottom: min(5em, 15%);
	gap: 1em min(2em,3.5%);
	display: flex;
	align-items: center;
}
.contents_area.pay #sec01 .local_flex1 > *:nth-child(1){
	padding: 0 1em;
	min-height: 5em;
	font-size: var(--font-16);
	font-weight: 700;
	color: var(--blue-color);
}
.contents_area.pay #sec01 .local_flex1 .txt{font-size: var(--font-14);}
@media screen and (min-width: 981px){
	.contents_area.pay #sec01 .local_flex1 > *:nth-child(1){width: min(30em,60%);}
}
@media screen and (max-width: 980px){
	.contents_area.pay #sec01 .local_flex1{flex-direction: column;}
	.contents_area.pay #sec01 .local_flex1 > *{width:100%;}
}
.pointcard_set{
	gap:1em;
	display: flex;
	justify-content: space-between;
}
.pointcard_set ~ .anchor{margin-top: min(5em, 15%);}
.pointcard_set .L{width:20%; min-width:min(11em,100%);}
.pointcard_set .R{width:78%;}
.pointcard_set .L h4{
	background-color: var(--blue-color);
	color:#FFF;
	padding: 0.75em 0;
	margin-bottom: 1rem;
	text-align: center;
	font-size: var(--font-20);
	font-weight: 700;
}
.pointcard_set .R table,
.pointcard_set .R table tr > *{border: solid 1px #ECECEC;}
.pointcard_set .R table{border-collapse: collapse;}
.pointcard_set .R table tr > *{padding: 1em;}
.pointcard_set .R table thead tr > *{
	background-color: #ECECEC;
	text-align: center;
	vertical-align: middle;
	font-size: var(--font-16);
	font-weight: 700;
}
.pointcard_set .R table thead tr > *:not(:first-child){border-left-color: #FFF;}
.pointcard_set .R table thead tr > *:not(:last-child){border-right-color: #FFF;}
.pointcard_set .R table thead tr > *:nth-child(1){width:8em;}
.pointcard_set .R table thead tr > *:nth-child(3){width:6em;}
.pointcard_set .R table thead tr > *:nth-child(4){width:9.5em;}
.pointcard_set .R table thead tr > *:nth-child(5){width:8.5em;}
.pointcard_set .R table tbody tr > *{
	white-space: pre-wrap;
	text-align: justify;
	vertical-align: middle;
	font-size: var(--font-14);
	line-height: 1.6em;
}
.pointcard_set .R table tbody tr > *:nth-child(1),
.pointcard_set .R table tbody tr > *:nth-child(3){text-align: center;}
.pointcard_set .R > * + *{margin-top: 1em;}
@media screen and (max-width: 1400px){
	.pointcard_set{flex-direction: column;}
	.pointcard_set .L{width:min(426px, 100%); min-width: 0; margin: 0 auto;}
	.pointcard_set .R{width:100%;}
	.pointcard_set .R .overflow{overflow-x: auto;}
	.pointcard_set .R table{min-width: 780px; width:100%;}
}
.contents_area.pay #sec02 .local_tbl1{overflow-x: auto;}
.contents_area.pay #sec02 .local_tbl1 table,
.contents_area.pay #sec02 .local_tbl1 tr > *{border: solid 1px #ECECEC;}
.contents_area.pay #sec02 .local_tbl1 table{width: 100%; border-collapse: collapse; min-width: 600px;}
.contents_area.pay #sec02 .local_tbl1 tr > *{
	text-align: center;
	vertical-align: middle;
}
.contents_area.pay #sec02 .local_tbl1 th{
	padding: 1em;
	font-size: var(--font-16);
	line-height: 1.6em;
}
.contents_area.pay #sec02 .local_tbl1 td{
	padding: 0.5em;
	/* font-size: clamp(20px,4vw,30px); */
	font-size: 30px;
	font-weight: 900;
}
.contents_area.pay #sec02 .local_tbl1 td::before{
	/* content:'─'; */
	box-sizing: border-box;
	content:'';
	display: inline-block;
	width:1em;
}
.contents_area.pay #sec02 .local_tbl1 td:not([mark="○"])::before{
	/*
	height:calc(1em * 4 / 30);
	margin-bottom: calc(1em * (30 - 4) / 30 / 2);
	*/
	height:4px;
	margin-bottom: 13px;
	background-color: #BEBEBE;
}
.contents_area.pay #sec02 .local_tbl1 td[mark="○"]::before{
	/*
	content:attr(mark);
	color:var(--blue-color);
	*/
	height:1em;
	border-radius: 100%;
	/* border:solid calc(1em * 4 / 30) var(--blue-color); */
	border:solid 4px var(--blue-color);
}
.contents_area.pay #sec02 .local_tbl1 thead tr > *{border-bottom: double 3px #ECECEC;}
.contents_area.pay #sec02 .local_tbl1 + *{margin-top: 1em;}
.contents_area.pay #sec03 .frame_B_L{
	margin-top: min(3em,9%);
	padding: 1em 1em 2em;
	margin-bottom: 1em;
	gap:1em;
}
.contents_area.pay .local_frame{
	box-sizing: border-box;
	margin-top: min(3em,9%);
	padding: max(1em, 3%);
	border: solid 1px #BEBEBE;
}
.contents_area.pay .local_frame .frame_B_L{
	margin-top: max(1em, 3%);
	padding: max(1em, 3%);
}
.contents_area.pay #sec06 hr{
	margin: min(3em,9%) 0;
	border: none;
	border-top:dotted 1px var(--blue-color);
}
.contents_area.pay #sec06 .local_flex1{
	margin-top: 1em;
	gap:2em 5%;
	font-size: var(--font-14);
	font-weight: 700;
	line-height: 1.6em;
	display: flex; align-items: center;
}
.contents_area.pay #sec06 .local_flex1 dl{
	width: min(16em, 40vw);
	border-bottom: solid 1px #BEBEBE;
	display: flex;
	justify-content: space-between;
}
.contents_area.pay #sec06 .local_flex1 dl + dl{margin-top: 0.5em;}
.contents_area.pay #sec06 .local_price{
	margin-top: 2em;
	font-size: var(--font-16);
	font-weight: 500;
	line-height: 1.6em;
	gap:1em;
	display: flex; flex-wrap: wrap; align-items: center;
}
.contents_area.pay #sec06 .local_price > *{
	padding: 0.5em 1em;
	box-sizing: border-box;
	background-color: var(--color-B-L);
	border-radius: 1em;
}

/*-----------------------------------------------------
  24:点検整備・車検
----------------------------------------------------- */
.contents_area.inspection .local_list1{
	margin-top: min(3em, 9%);
	counter-reset: number 0;
	gap: clamp(2em,3vw,2.5em);
	display: grid;
	grid-template-columns: repeat(4,1fr);
}
.contents_area.inspection .local_list1 dl{gap:0.5em; display: flex; flex-direction: column;}
.contents_area.inspection .local_list1 dl dt{display: flex;}
.contents_area.inspection .local_list1 dl dt div{
	background: var(--grad-180deg);
	color:#FFF;
	padding: 0.5em 1em;
	font-size: var(--font-18);
	font-weight: 500;
}
.contents_area.inspection .local_list1 dl dt div::before{
	counter-increment: number 1;
	content: 'Point' counter(number, decimal-leading-zero);
}
.contents_area.inspection .local_list1 dl dd h4{
	color:var(--blue-color);
	font-size: var(--font-20);
	font-weight: 500;
	margin-bottom: 0.75em;
}
@media screen and (max-width: 1200px){
	.contents_area.inspection .local_list1{grid-template-columns: repeat(2,1fr);}
}
@media screen and (max-width: 600px){
	.contents_area.inspection .local_list1{grid-template-columns: 1fr;}
}

/*-----------------------------------------------------
  25:KeePer ProShop
----------------------------------------------------- */
.contents_area.keeper_proshop #sec01 .frame_B_L.labelbox{margin: min(3em, 9%) 0;}
@media only screen and (min-width: 601px){
	.contents_area.keeper_proshop #sec01 .flex__inner p{max-width: min(34em,100%);}
}

/*-----------------------------------------------------
  26:修理・板金
----------------------------------------------------- */
.contents_area.bodyrepair #sec01 .frame_B_L{margin-top: min(3em, 9%);}
.contents_area.bodyrepair #sec01 .frame_B_L .flex{
	padding: 2em 0;
	gap:1.5em 2em;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.contents_area.bodyrepair #sec01 .frame_B_L .flex a{
	margin: 0;
	padding: 15px 4em;
}
.contents_area.bodyrepair .local_list1{
	counter-reset: number 0;
	margin: min(3em, 9%) 0;
}
.contents_area.bodyrepair .local_list1 dl{
	gap:0 1em;
	display: flex;
}
.contents_area.bodyrepair .local_list1 dl dt{
	width:calc(1em * 45 / 18);
	min-width: calc(1em * 45 / 18);
	font-size: var(--font-18);
	font-weight: 500;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.contents_area.bodyrepair .local_list1 dl dt::before,
.contents_area.bodyrepair .local_list1 dl dt::after{
	content: '';
	display: block;
	width: 3px;
	background-color: var(--color-tenpo_table);
}
.contents_area.bodyrepair .local_list1 dl dt::before{min-height: calc(1em + 3px);}
.contents_area.bodyrepair .local_list1 dl dt::after{flex-grow: 1;}
.contents_area.bodyrepair .local_list1 dl:first-child dt::before,
.contents_area.bodyrepair .local_list1 dl:last-child dt::after{display: none;}
.contents_area.bodyrepair .local_list1 dl dt div{
	background: var(--grad-180deg);
	color:#FFF;
	width:100%;
	height:calc(1em * 45 / 18);
	border-radius: 100%;
	margin: -3px 0;
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: center;
	align-items: center;
}
.contents_area.bodyrepair .local_list1 dl dt div::before{
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
}
.contents_area.bodyrepair .local_list1 dl dd{
	padding-bottom: 1em;
	border-bottom: solid 1px #BEBEBE;
	flex-grow: 1;
}
.contents_area.bodyrepair .local_list1 dl:nth-child(n+2) dd{padding-top: 1em;}
.contents_area.bodyrepair .local_list1 dl dd h4{
	color:var(--blue-color);
	font-size: var(--font-24);
	font-weight: 500;
	height:calc(1em * 45 / 24);
	display: flex;
	align-items: center;
}
.contents_area.bodyrepair .local_list1 dl dd h4 + *{margin-top: 1em;}
.contents_area.bodyrepair .local_list2{
	/* gap: clamp(16px,3vw,40px); */
	gap: clamp(2em,3vw,2.5em);
	display: grid;
	grid-template-columns: repeat(2,1fr);
}
@media only screen and (max-width: 600px){
	.contents_area.bodyrepair .local_list2{grid-template-columns: 1fr;}
}
.contents_area.bodyrepair .local_list2 dd{
	background-color:var(--color-B-L);
	border-radius: 0.75rem;
	padding: 1.5em 2em;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.contents_area.bodyrepair .local_list2 dd h4{
	color:var(--blue-color);
	font-size: var(--font-24);
	font-weight: 500;
}
.contents_area.bodyrepair .local_list2 dd h4 + *{margin-top: 1em;}
.contents_area.bodyrepair .local_list3{
	margin-bottom: 3em;
	counter-reset: number 0;
	gap: clamp(2em,3vw,2.5em);
	display: grid;
	grid-template-columns: repeat(3,1fr);
}
@media screen and (max-width: 1200px){
	.contents_area.bodyrepair .local_list3{grid-template-columns: repeat(2,1fr);}
}
@media screen and (max-width: 600px){
	.contents_area.bodyrepair .local_list3{grid-template-columns: 1fr;}
}
@media screen and (min-width: 601px){
	.contents_area.bodyrepair .local_list3 dl{order:3;}
	.contents_area.bodyrepair .local_list3 dl.img{order:2;}
	.contents_area.bodyrepair .local_list3 dl.img + dl{order:1;}
}
.contents_area.bodyrepair .local_list3 dl dt{
	gap:1em;
	display: flex;
	align-items: baseline;
}
.contents_area.bodyrepair .local_list3 dl dt div{
	background: var(--grad-180deg);
	color:#FFF;
	width:calc(1em * 45 / 18);
	min-width:calc(1em * 45 / 18);
	height:calc(1em * 45 / 18);
	border-radius: 100%;
	font-size: var(--font-18);
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
}
.contents_area.bodyrepair .local_list3 dl dt div::before{
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
}
.contents_area.bodyrepair .local_list3 dl dt h4{
	flex-grow: 1;
	color:var(--blue-color);
	font-size: var(--font-24);
	font-weight: 500;
	line-height: 1.6em;
}
.contents_area.bodyrepair .local_list3 dl dd{margin-top: 1em;}

/*-----------------------------------------------------
  27:アップル
----------------------------------------------------- */
.contents_area.used_car #sec01 .logo{
	font-size: clamp(15px, 3vw, 19px);
	margin-bottom: 2em;
	gap:1em;
	display: flex;flex-direction: column; align-items: center;
}
.contents_area.used_car #sec01 .logo img{width: min(374px, 80%);}
.contents_area.used_car #sec01 .photo{margin-top: 3em; gap:20px 4%; display: flex;}
.contents_area.used_car #sec01 .photo img{
	flex-grow: 1;
	object-fit: cover;
	border-radius: 1rem;
}
@media only screen and (min-width: 601px){
	.contents_area.used_car #sec01 .photo img{width: 40%;}
}
@media only screen and (max-width: 600px){
	.contents_area.used_car #sec01 .photo{flex-direction: column;}
}
.contents_area.used_car #sec03 h4.catch{
	text-align: center;
	color:var(--color-R);
	font-size: clamp(14px, 3vw, 19px);
	line-height: 1.6em;
	margin-bottom: min(2em,5%);
}
.contents_area.used_car #sec03 .photo{margin-top: 3em; box-sizing: border-box; border: 1px solid #B2B2B2; padding: 1.5em; gap:1rem 1em; display: flex;}
.contents_area.used_car #sec03 .photo img{
	flex-grow: 1;
	object-fit: cover;
}
@media only screen and (min-width: 601px){
	.contents_area.used_car #sec03 .photo img{width: 40%;}
}
@media only screen and (max-width: 600px){
	.contents_area.used_car #sec03 .photo{
		font-size: 12px;
		flex-direction: column;
	}
}

/*-----------------------------------------------------
  29:各種保険販売
----------------------------------------------------- */
.contents_area.insurance .local_flex1 dl{
	gap:1em 2em;
	display: flex;
	justify-content: space-between;
}
.contents_area.insurance .local_flex1 dl dd.p{
	width:min(503px,50.3%);
	min-width:min(503px,50.3%);
}
.contents_area.insurance .local_flex1 dl ul + p{margin-top: 1em;}
.contents_area.insurance .local_flex1 dl + dl{margin-top: min(3em,9%);}
@media screen and (max-width: 980px){
	.contents_area.insurance .local_flex1 dl{flex-direction: column;}
	.contents_area.insurance .local_flex1 dl dd{order:2;}
	.contents_area.insurance .local_flex1 dl dd.p{width:100%; min-width: 0; order:1;}
}

.contents_area.insurance .local_flex1 h4,
.contents_area.insurance .local_list3 h4{font-size: var(--font-18); font-weight: 700; margin-bottom: 1em;}
.contents_area.insurance .local_list1{
	counter-reset: number 0;
	margin-top: min(3em,9%);
}
.contents_area.insurance .local_list1 *{font-size: var(--font-18);}
.contents_area.insurance .local_list1 dt{
	font-weight: 700;
	margin-bottom: 1em;
}
.contents_area.insurance .local_list1 dt::before{
	counter-increment: number 1;
	content: counter(number) '.';
	display: inline-block;
	min-width: 1.5em;
}
.contents_area.insurance .local_list1 dd{
	padding-left: 1.5em;
	margin-bottom: 1.5em;
}
.contents_area.insurance .local_list2{margin-top: min(3em,9%);}
.contents_area.insurance .local_list2 dl{
	padding: 1em 0;
	gap:1em 5%;
	display: flex;
	border-bottom: solid 1px #B2B2B2;
}
.contents_area.insurance .local_list2 dl > *{line-height: 1.6em;}
.contents_area.insurance .local_list2 dt{
	font-size: var(--font-18);
	font-weight: 700;	
	min-width: min(24em,45%);
	white-space: pre-wrap;
}
.contents_area.insurance .local_list2 dd{font-size: var(--font-16);}
.contents_area.insurance .local_list3 h4 ~ h4{margin-top: min(3rem,9%);}
.contents_area.insurance .local_list3 ul{
	font-size: var(--font-18);
	padding-left: 1em;
}

/*-----------------------------------------------------
  30:カーケア
----------------------------------------------------- */
.contents_area.carcare .carcare_menu{
	gap:min(2em,4vw) 4%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.contents_area.carcare .carcare_menu a[btn="img"]{
	min-width: max(min(162px,48%),min(220px, 22%));
	aspect-ratio: 220 / 140;
	border-radius: 1em;
}
.contents_area.carcare .carcare_menu a[btn="img"]::after{
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: var(--blue-color);
	opacity: 0.5;
	/* mix-blend-mode: multiply; */
}
.contents_area.carcare .carcare_menu a[btn="img"] p{font-size:var(--font-20);}
.contents_area.carcare .anchor{margin-top: min(3rem,9%);}
.contents_area.carcare .floatbox{
	display: flex;
	justify-content: space-between;
}
.contents_area.carcare .floatbox .text{
	display: flex;
	flex-direction: column;
}
.contents_area.carcare .floatbox .text p{margin-bottom: auto;}
.contents_area.carcare .floatbox .photo img{
	border-radius: 1em;
	border: solid 1px #B2B2B2;
}
.contents_area.carcare .floatbox .btn{
	margin-top: min(2em,6%);
	display: flex;
}
.contents_area.carcare .floatbox a[btn="oval"]{
	max-width: none;
	aspect-ratio: auto;
}
@media only screen and (min-width: 701px){
	/*
	.contents_area.carcare .floatbox::after{
		content: '';
		display: block;
		clear: both;
	}
	*/
	.contents_area.carcare .floatbox > *{
		/* float: left; */
		width: 52%;
	}
	.contents_area.carcare .floatbox .photo{
		/* float: right; */
		width: 44%;
	}
	.contents_area.carcare .floatbox .btn{margin-right: -2em;}
}
@media only screen and (max-width: 700px){
	.contents_area.carcare .floatbox{
		gap: 1em;
		flex-direction: column-reverse;
	}
}
.contents_area.carcare .btn_back a{margin-left: auto;}
.contents_area.carcare .btn_back .c-button-more{background-color: var(--color-hover); color:#FFF;}

/*-----------------------------------------------------
  33:Q&A
----------------------------------------------------- */
.faq_menu{
	max-width: 880px;
	display: grid;
	grid-template-columns: repeat(2, minmax(360px, 1fr));
	gap: clamp(10px, 2vw, 20px) clamp(16px, 2vw, 20px);
	list-style: none;
	margin: 0;
	padding: 0;
}
.faq_menu a{margin: 0; max-width: none;}
@media only screen and (max-width: 600px){
	.faq_menu{grid-template-columns: 1fr;}
}
.contents_area.faq section dl{
	font-size: var(--font-18);
	padding-bottom: 1.5em;
	border-bottom: 1px solid #B2B2B2;
}
.contents_area.faq section dl + dl{margin-top: 1.5em;}
.contents_area.faq section dl > *{
	padding-left: 2em;
	position: relative;
	white-space: pre-wrap;
	font-weight: 500;
	line-height: 1.75em;
}
.contents_area.faq section dl dt{color:var(--blue-color);}
.contents_area.faq section dl dd{margin-top: 0.75em;}
.contents_area.faq section dl dt::before,
.contents_area.faq section dl dd::before{
	position: absolute;
	top:0;
	left:0;
}
.contents_area.faq section dl dt::before{content: 'Q.';}
.contents_area.faq section dl dd::before{content: 'A.';}
.contents_area.faq section dl dd .flex_wrap{white-space: normal;}
.contents_area.faq section dl dd .flex_wrap.nomgnL{margin-left: -2em;}

