@charset "UTF-8";


/*=======================================================*/
/*      		セクション毎のCSS   			  		  */
/*======================================================*/


/*======= 共通 ======*/

/* 親要素からはみ出して画面いっぱいに */
.full {
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}



/*======= TOP ======*/
/*ご挨拶*/
.greeting {
	padding: clamp(40px, 6vw, 90px) 0 var(--v-space);
	background-color: var(--base-color);
	position: relative; /* sectionの位置を相対的にする*/
	z-index: 1; /* 背景画像より上に表示 */
}

.greeting-spot {
	color: var(--accent-color1);
	font-size: 1.2em;
}

span.gcol{
	color: var(--accent-color1);
	font-weight:bold !important;
}

/*======= コンテンツ ======*/

/*======= ABOUT CMSとは======*/
/*section1*/
.secA {
	padding: var(--v-space) 0;
	background-color: #FFF;
	background-image: url(../img/bg_01a.png), url(../img/bg_01b.png);
	background-repeat: no-repeat, no-repeat ;
	background-position: top center, bottom center ;
	background-size: 100%, 100%;
}

p.indent{

    text-indent: -1em;
    padding-left: 1em;
	margin-top:-1.5em;
}

@media screen and (max-width: 568px) { 

	p.indent{
		text-indent: -1em;
		padding-left: 1em;
		margin-top:-0.5em;
	}
}

h3.title2{
	margin-top:5em !important;
}

/*カード*/
.secA-card__item{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap:10px;
}
@media only screen and (max-width: 968px) {
	.secA-card__item{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
}
@media only screen and (max-width: 568px) {
	.secA-card__item{
		display: grid;
		grid-template-columns: repeat(1, 1fr);
	}
}
.secA-card__item div{
	/*子要素のそれぞれのdivの高さを揃える記述*/
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	/*ここまで*/

	padding: 10px;
	border-radius: 10px;
	box-sizing: border-box;
	box-shadow: 0 13px 13px 0 rgba(0, 0, 0, .06);
}


/* ベース */
.secA-card__item H4{
	position: relative;
	margin: 24px 0 5px;   /* 下に少し余白を作って横線を見せる */
	text-align: center;
	font-size: clamp(14px, 1.2vw + 10px, 18px);
	line-height: 1;
	letter-spacing: .1em;
	font-weight: 600;
	margin-top:0;
}

/* 下の細い横線 */
.secA-card__item H4::after{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -8px;          /* 見た目で微調整：ボックスの少し下に線 */
	height: 2px;           /* 画像っぽく細め */
	background: var(--accent-color2);
	opacity: .85;
}

/* 中央のラベル */
.secA-card__item H4 > span{
	display: inline-block;
	padding: .35em 1.1em;
	background: var(--accent-color1);
	color: #fff;
	border-radius: 2px;    /* 画像にならって控えめ(丸み不要なら0に) */
	position: relative;
	z-index: 1;            /* 横線より前面に */
	font-weight:normal;
}

.secA-card__item p{
	display: inline-block;
	font-size: 15px;
	line-height: 1.5;
}



/*======= Cars 取扱い車種 ======*/
.secC {
	padding: var(--v-space) 0;
	background-color: #FFF;
	background-image: url(../img/bg_03.png);
	background-size:cover;
	background-position: bottom;
	position: relative; /* sectionの位置を相対的にする*/ 
	z-index: 1; /* 背景画像より上に表示 */ 
}

/*取り扱い車種*/
.contentsbg3{
	background: rgba(255, 255, 255, 0.9);
	padding: 40px 40px;
}

@media screen and (max-width: 568px) { 
	.contentsbg3{
		background: rgba(255, 255, 255, 0.9);
		padding: 0px 0px;
	}
}


/*カード*/
.secC-card__item{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap:10px;
}
@media only screen and (max-width: 968px) {
	.secC-card__item{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
}
@media only screen and (max-width: 568px) {
	.secC-card__item{
		display: grid;
		grid-template-columns: repeat(1, 1fr);
	}
}
.secC-card__item div{
	/*子要素のそれぞれのdivの高さを揃える記述*/
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	/*ここまで*/

	padding: 10px;
	border-radius: 10px;
	box-sizing: border-box;
	box-shadow: 0 13px 13px 0 rgba(0, 0, 0, .06);
}


.secC-card__item h4 {
  position: relative;
  padding: 10px;
	font-size: clamp(14px, 1.2vw + 10px, 18px);
  font-weight: normal;
  line-height: 1.3;
  text-align: center;
  background-color: var(--accent-color1);
  color: white;
  margin: 0;
  overflow: hidden; /* 擬似要素のはみ出し防止 */
  margin-bottom:-20px;
}

/* 左上の三角形 */
.secC-card__item h4::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-top: 20px solid var(--accent-color3);       /* 三角形の高さ */
  border-right: 27px solid transparent; /* 三角形の横幅 */
}




/*======= Service 業務内容 ======*/
.secS{
	padding: var(--v-space) 0;
	position: relative;
	z-index: 1;
	background-color: #f7f7f7;
	background-image: repeating-linear-gradient(0deg, #e6e6e6 0, #e6e6e6 1px, transparent 1px, transparent 15px), repeating-linear-gradient(90deg, #e6e6e6 0, #e6e6e6 1px, transparent 1px, transparent 15px);
	background-size: 15px 15px;
}


/*業務内容*/
.contentsbgS{
	box-shadow: 0 13px 13px 0 rgba(0, 0, 0, .3);
}


/*リスト*/
.bullet-list {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

/* PC・タブレット */
.bullet-list li {
	position: relative;
	width: 48%;
	margin-right: 4%;
	margin-bottom: 1em;
	padding-left: 1em;
	box-sizing: border-box;
	padding-bottom:0 !important;
}

/* 偶数項の右マージンなし */
.bullet-list li:nth-child(2n) {
	margin-right: 0;
}

/* ●マーク */
.bullet-list li::before {
	content: "●";
	position: absolute;
	left: 0;
	color: var(--accent-color2);
}

/* スマホでは1列で左右バランス・インデント調整 */
@media screen and (max-width: 767px) {
	.bullet-list li {
		width: 90%;
		margin-right: 0;
		padding-left: 1em;      /* インデント少し小さく */
		text-indent: 0em;
		margin-left:5%;
	}

}


/*======当社は『安全と真心で社会にご奉仕』、==========*/


.secN2 {
	padding: var(--v-space) 0;
	background-color: #FFF;


	position: relative;
	z-index: 1;
	background-color: #eaf0f8; /* 薄い紺系のベース */
	background-size: 6px 6px;
	background-image: repeating-linear-gradient(
	0deg,
	#c3d1e6,   /* ストライプ（淡い紺） */
	#c3d1e6 1px,
	#eaf0f8 1px,
	#eaf0f8
	);

}

.min{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size:18px;
	font-weight:bold;
}

p.right{
	text-align:right;
}

/*======= FAQ ======*/
.faq_sec1 {
	padding: var(--v-space) 0;
	padding: var(--v-space) 0;
	background-color: #FFF;
	background-image: url(../img/bg_05.png);
	background-size:cover;
	background-position: bottom;
	position: relative; /* sectionの位置を相対的にする*/ 
	z-index: 1; /* 背景画像より上に表示 */ 
}

.faq2 {
 /*display: flex;*/
 flex-direction: column;
 gap: 10px;
}

.faqItem {
 display: grid;
 grid-template-columns: 2em 1fr;
 align-items: flex-start;
    column-gap: 0;
}

.faqItem .label {
 font-weight: bold;
 color: var(--accent-color3);
 font-size: 130%;
 line-height: 1.4;
}

.faqItem .labelA {
 font-weight: bold;
 color: var(--accent-color1);
 font-size: 130%;
 line-height: 1.4;
}

.faq2 p {
 margin-top: 5px;
 line-height: 1.5;
    letter-spacing: 0.06em;
 text-align: left;
 display: block;
}

.faq2 p.b {
 font-weight: bold;
 color: #444;
}

hr.faqHr {
 height: 0px;
 border: 1px dashed var(--accent-color2);
 margin: 20px auto;
}




/*======= 会社案内ページ ======*/
/*会社案内*/
.info_sec1{
	padding: var(--v-space) 0;
	background-color: #FFF;
	background-size: 100%;
}
/* 概要・アクセス部分のテーブル */
.info1 {
	font-weight: bold;
	border-bottom: 1px dashed var(--accent-color2);
	padding: 5px;
	width: 5.25em;
}
.info2 {
	border-bottom: 1px dashed var(--accent-color2);
	padding: 5px;
	width: 400px;
}
@media screen and (max-width: 568px) {
	.info1 {
		display: block;
		padding: 8px 2px 2px 2px;
		width: 100%;
		border-bottom: 1px solid rgba(255,255,255,0);
	}
	.info2 {
		display: block;
		padding: 2px;
		width: 99%;
	}
}

.info-sec1-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 5px 5px;
}

@media (min-width: 568px) {
	.info-sec1-container {
		grid-template-columns: repeat(6, 1fr);
	}
}

/*会社概要*/
.bg_b{
	background: rgba(14,27,71, 0.9);
	padding:40px;
}
@media screen and (max-width: 568px) {
	.bg_b {
		padding: 20px;
	}
}

.access_sec1{
	padding: var(--v-space) 0;
	background-color: #FFF;

	position: relative; /* sectionの位置を相対的にする*/ 
	z-index: 1; /* 背景画像より上に表示 */ 
}



/*======= 調整 ======*/
.l-c {
	margin-right: auto;
	margin-left: auto;
}


/*その他*/
strong{
	font-weight:normal;
}


/*全体*/
h3.title{
	text-align:center;
	margin-bottom:2em;
	font-size: clamp(20px,2.5vw,30px);

	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	margin-top:1em;
}

h3.title::after{
	margin:0 auto;
	display: block;
	content: '';
	width: 160px;
	height: 0px;
	margin-top: 0.6em;
	margin-bottom: 0.2rem;
	border-bottom: 3px double var(--accent-color3);
	font-weight: bold;
	font-size: 26px;
}


.waku{
	background-color:var(--accent-color2);
	padding:10px;
	border:3px double white;
	text-align:center;
}
.imgtext-container > figure.img {
	box-shadow: 6px 6px 1px #eee ;
    outline: 1px solid #fff;
    outline-offset: -0.6rem;
}

