@charset "UTF-8";

body
    {
	margin:0px;          /* ページ全体のmargin */
	padding:0px;         /* ページ全体のpadding */
	text-align:center;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a:link {
	text-decoration: none;
	color: #333;
}
a:visited {
	text-decoration: none;
	color: #333;
}
a:hover {
	color: #D71330;
	text-decoration: none
}
a:active {
	color: #F00;
	text-decoration: none
}

a:hover img{
opacity:0.7;
filter:alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}

.text10 {
	font-size: 10px;
	color: #333;
}


.text11 {
	font-size: 11px;
	color: #333;
	line-height: 16px;
}

.text11l {
	font-size: 11px;
	color: #333;
	line-height: 24px;
}


.text12 {
	font-size: 12px;
	color: #333;
	line-height: 18px;
}

.text12l {
	font-size: 12px;
	color: #333;
	line-height: 26px;
}


.text12lred {
	font-size: 12px;
	color: #D71F3B;
	line-height: 26px;
	font-weight: bold;
}

.text12dan {
	font-size: 12px;
	color: #333;
	line-height: 24px;
}

.text12red {
	font-size: 12px;
	color: #D71F3B;
	line-height: 18px;
}

.text14 {
	font-size: 14px;
	color: #333;
	line-height: 30px;
}
.text14B {
	font-size: 14px;
	color: #333;
	line-height: 24px;
}

.text14red {
	font-size: 14px;
	color: #D71F3B;
	line-height: 20px;
	font-weight: bold;
	text-align: center;
}

.text18red {
	font-size: 16px;
	color: #D71F3B;
	font-weight: bold;
}
.text18B {
	font-size: 16px;
	color: #D71F3B;
	font-weight: bold;
	line-height: 28px;
}



#container {
	width: 100%;
	text-align:center;     /* 中身を中央表示に */
}

/*ヘッダー*/
#header {
	width: 100%;
	background: #FFF url(images/rktop1310_23.png) repeat-x bottom;
	height: 135px;
}

.logo {
	width: 900px;
	height: 85px;
	padding-top: 4px;
	margin:0px auto;
}


.hlogo {
	float: left;
	padding-right: 5px;
	}
	
.hcatch {
	float: left;
	padding-right: 110px;
	padding-top: 10px;
	}

.htoibox {
	float: left;
	padding-right: 5px;
	width: 380px;
	}
	

.hlogo2 {
	float: left;
	padding-left: 5px;
	text-align: right;
	}


.nav {
	width: 900px;
	margin:0px auto;
}

.nav2 {
	width: 100%;
	background: #F2F2F2;
	padding: 0px 3px 0px -30px;
	font-size: 12px;
	color: #333;
	margin:0px auto;
	line-height: 36px;
}
.nav2 img {
	height: 13px;
	width: 13px;
	padding-left: 35px;
	margin-bottom: -2px;
	padding-right: 3px;
	padding-top: 5px;
	}


/*イメージ切替*/

/*crossFader*/
.crossfader{
	position:relative;
	height:340px;
}

.crossfader img{
	position:absolute;
	top:0;
	left:0;
	z-index:8;
	opacity:0;
	cursor:pointer;
}

.crossfader .active{
	z-index:10;
	opacity:1.0;
}

.crossfader .last-active{
	z-index:9;
}


/*本文*/
.imgbox2 {
	width:900px;
	margin:0px auto;
	padding-bottom: 40px;
}

.imgbox {
	width:900px;
	margin:0px auto;
	padding-bottom: 100px;
}

/*トップコンテンツ*/
#mbox{
	width: 900px;
	margin:0px auto;
	padding-top: 50px;
}

.lbox{
	width: 597px;
	float: left;
	padding-right: 30px;
	padding-left: 20px;
}

.rbox{
	width: 222px;
	float: left;
	padding-right: 0px;
	padding-left: 30px;
	padding-bottom: 30px;
}


.info{
		width: 554px;
		float: left;
		text-align: left;
}

.branch{
	width: 554px;
	float: left;
	text-align: left;
	padding-top: 10px;
	margin-top: 20px;
	margin-bottom: 10px;
}

.hoken{
	width: 530px;
	float: left;
	border: 5px solid #DEDEDE;
	text-align: left;
	margin-top: 10px;
	padding-top: 10px;
	padding-left: 14px;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

.bnr{
	width: 220px;
	float: left;
}

.partner{
	width: 256px;
	float: left;
	margin-top: 20px;
}

.partnerb{
	float: left;
	padding-top: 5px;
	padding-right: 5px;
}

.partnerc{
	float: left;
	padding-top: 5px;
	padding-left: 5px;
}

/*PR*/
.prbox{
	width: 550px;
	margin:5px auto 10px;
	float: left;
}

.prt{
	width: 100%;
	padding: 5px 0px 2px 3px;
	float: left;
	text-align: left;
}

.prb{
	width: 100%;
	padding: 0px 1px 5px 0px;
	float: left;
	text-align: left;
}



/*ページコンテンツ*/
#pbox{
	width: 900px;
	margin:0px auto;
	background: url(images/page_bg.png) repeat-y left;
	padding-bottom: 100px;
}
.lpbox{
	width: 305px;
	float: left;
	padding-right: 10px;
	text-align: left;
	height:100%;
}

.rpbox{
	width: 470px;
	float: left;
	padding-right: 30px;
	padding-left: 50px;
	text-align: left;
}

.rpbox2{
	width: 530px;
	float: left;
	padding-right: 10px;
	padding-left: 40px;
	text-align: left;
}

.rpbox2 p {
	padding-left: 5em;
      }

.rpbox2 table {
	width: 540px;
	font-size: 12px;
	text-align: left;
	color: #333;
	line-height: 18px;
}

.rpbox2 td {
	border-bottom: 1px dotted #999;
}

.rpbox3{
	width: 550px;
	float: left;
	padding-right: 0px;
	padding-left: 0px;
	text-align: left;
}


/*保険コンテンツ*/
.hplbox{
	width: 620px;
	float: left;
	padding-right: 25px;
	padding-left: 0px;
}

.pbranch{
	width: 620px;
	float: left;
	text-align: left;
	margin-bottom: 20px;
}

.pbranch2{
	width: 580px;
	float: left;
	text-align: left;
	margin-bottom: 20px;
	padding-left: 40px;
	border-bottom: 1px dotted #CCC;
	padding-bottom: 20px;
}


.pbranch3{
	width: 560px;
	float: left;
	text-align: left;
	margin-bottom: 40px;
	padding: 30px;
	background: #FAF4E6;
	font-size: 12px;
	line-height: 20px;
	color: #333;
}

.hbimg{
	margin: 0px 10px 10px 0px;
	padding: 0px;
	float: left;
}

.qaimg{
	margin: -10px 5px 0px 0px;
	float: left;
	line-height: 26px;
}

.qaimg2{
	margin: -5px 5px 30px 0px;
	float: left;
	line-height: 26px;
}


.qaimg3{
	margin: 0px 5px 0px 0px;
	float: left;
	line-height: 26px;
}

/*支社紹介*/

.officebox{
	width: 550px;
	float: left;
	text-align: left;
	margin-top: 40px;
	margin-bottom: 40px;
}

.ofad{
	float: left;
	width: 550px;
	font-size: 12px;
	line-height: 16px;
	color: #333;
}

.ofhito{
	float: left;
	width: 190px;
	margin: 0px;
	font-size: 12px;
	line-height: 20px;
	color: #333;
	margin: 10px 10px 10px 5px;
}

.ofimg{
	float: left;
	width: 315px;
	margin-top: 10px;
	margin-bottom: 15px;
	margin-left: 10px;
}

.ofimg img{
	padding: 2px;
	}


.ofmap{
	float: left;
	width: 530px;
}

.branchmenu{
	float: left;
	width: 220px;
	margin-left: 10px;
	font-size: 14px;
	line-height: 24px;
	color: #FFF;
	text-decoration: none;
}

.branchmenu a:link {
color: #FFF;
}
.branchmenu a:visited {
	color: #FFF;
}
.branchmenu a:hover {
	color: #F99;
}
.branchmenu a:active {
	color: #F00;
}





/*フッター*/	

#footer {
	width: 100%;
	background: #F6F6F6;
}


.footerline {
	width: 100%;
	background: #D71330;
	height: 5px;
}

.footerbox{
	width: 900px;
	margin:0px auto;
}

.footerbox  table {
	font-size: 12px;
	color: #333;
	line-height: 18px;
	text-align: left;
	float: left;
}
.flogo {
	float: left;
	padding-top: 15px;
	padding-bottom: 10px;
	padding-right: 10px;
	}
	
.flogo2 {
	float: left;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 400px;
	}
	
.flogo3 {
	float: left;
	width: 980px;
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 10px;
	padding-left: 0px;
	}
	
	
	
	
/*floatの解除*/

.clear {
    clear:both;
}



/* ==============================
    new
============================== */

.section{
	padding:64px 0;
	border-top:1px solid var(--line);
	clear:both;
}
.section__eyebrow{
  color:var(--red);
  font-size:.875rem;
  font-weight:700;
  letter-spacing:.08em;
  margin:0 0 .5rem;
}
.section__title{
  font-size:1.5rem;
  line-height:1.5;
  margin:0 0 1.25rem;
  font-weight:800;
}
.lead{font-weight:700}
.small{font-size:.875rem;color:var(--muted)}
.text-center{text-align:center}

/* ==============================
    Hero
============================== */
.hero{
	position:relative;
	color:#fff;
  }
.hero .fv img{
	width:100%;
	height:auto;
	display:block;
  }


/* info 見出しの赤ラベル＋下線 */
/* コンテナ幅を少し広くして中央寄せ（必要に応じ調整） */
.infom{ 
	padding: 100px 0 120px; 
}
.infom__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.infom .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.infom .section__eyebrow::after{
  content:"";
  position:absolute; 
  left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
  top: 50%;
  bottom: auto;
  transform: translateY(-50%); /* 見出しの縦中央に合わせる */
  width: 120px;                /* 長さはお好みで */
  height: 2px;
  background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.infom__title{
  margin: 0 0 30px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}

/* 2段目（太め） */
.infom__lead{
  margin: 0 0 30px;
  font-weight: 700;
  color:#222;
  line-height: 1.9;
  font-size: clamp(16px, .4vw + 14px, 22px);
}

/* 注釈（小さめ) */
.infom__note{
  margin: 0;
  color:#222;
  line-height: 1.9;
  font-size: 16px;
}
.infom__note + .info__note{ margin-top: 6px; }

/* SP微調整（見出し線を短く、文字少し小さく） */
@media (max-width: 768px){
  .infom__wrap{ max-width: none; padding-right: 16px; padding-left: 16px; }
  .infom .section__eyebrow::after{ width: 60px; bottom: -6px; }
  .infom__title{ font-size: clamp(20px, 4.6vw, 28px); line-height: 1.55; }
  .infom__lead{ font-size: 16px; }
  .infom__note{ font-size: 12.5px; }
}



.utill{ 
	padding: 120px 0 120px; 
	background: #F5F5F5;
}
.utill__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.utill .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.utill .section__eyebrow::after{
	content:"";
	position:absolute; 
	left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
	top: 50%;
	bottom: auto;
	transform: translateY(-50%); /* 見出しの縦中央に合わせる */
	width: 120px;                /* 長さはお好みで */
	height: 2px;
	background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.utill__title{
  margin: 0 0 50px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}


/* 箇条書き（赤い丸ドット） */
.utill__list{
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 14px;           /* 行間 */
  }
  .utill__list li{
	position: relative;
	padding-left: 28px;  /* ドット分のインデント */
	line-height: 1.9;
	color:#333;
	font-size: 16px;
  }
  .utill__list li::before{
	content:"";
	position:absolute; left:0; top: .85em;
	width: 14px; height: 14px;
	border-radius: 50%;
	background:#D92121;
	top: 0.5em;     
  }
  
  /* SP微調整 */
  @media (max-width: 768px){
	.utill{ padding: 72px 0 88px; }
	.utill .section__eyebrow::after{ width:60px; }
	.utill__title{ font-size: clamp(20px, 4.6vw, 28px); }
	.utill__list{ gap: 12px; }
	.utill__list li{ font-size: 13.5px; }
  }



  /* feature 見出しの赤ラベル＋下線 */
/* コンテナ幅を少し広くして中央寄せ（必要に応じ調整） */
.feature{ 
	padding: 120px 0 120px; 
}
.feature__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.feature .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.feature .section__eyebrow::after{
  content:"";
  position:absolute; 
  left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
  top: 50%;
  bottom: auto;
  transform: translateY(-50%); /* 見出しの縦中央に合わせる */
  width: 120px;                /* 長さはお好みで */
  height: 2px;
  background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.feature__title{
  margin: 0 0 50px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}

/* 行リスト全体 */
.feature__rows{
	margin-top: 16px;
  }
  
  /* 各行 */
  .feature__row{
	padding: 15px 0 30px;
	border-top: 1px dashed var(--line);
  }
  .feature__row:first-child{ border-top: 0; }
  
  /* 見出し（番号を左に大きく表示） */
  .feature__h{
	display: flex;
	align-items: baseline;
	gap: .6em;                 /* 番号と見出しの間隔 */
	margin: 0;
	font-weight: 900;
	color: #222;
	line-height: 1.45;
	font-size: clamp(22px, 1.8vw + 18px, 24px);
  }
  
  /* 先頭の赤い番号「01.」 */
  .feature__no{
	color: #D92121;
	font-weight: 600;
	letter-spacing: .12em;
	line-height: 1;
	font-size: 1.2em;          /* 見出しより一回り大きく */
  }
  
  /* 本文 */
  .feature__text{
	margin: 16px 0 0;
	color: #555;
	line-height: 1.9;
	font-size: clamp(14px, .35vw + 13px, 16px);
  }
  
  /* SP最適化 */
  @media (max-width: 960px){
	.feature__h{ font-size: clamp(20px, 4.8vw, 28px); }
	.feature__no{ font-size: 1.4em; }
  }

/* SP微調整（見出し線を短く、文字少し小さく） */
@media (max-width: 768px){
  .feature__wrap{ max-width: none; padding-right: 16px; padding-left: 16px; }
  .feature .section__eyebrow::after{ width: 60px; bottom: -6px; }
  .feature__title{ font-size: clamp(20px, 4.6vw, 28px); line-height: 1.55; }
}



.flow{ 
	padding: 120px 0 120px; 
	background: #F5F5F5;
}
.flow__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.flow .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.flow .section__eyebrow::after{
	content:"";
	position:absolute; 
	left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
	top: 50%;
	bottom: auto;
	transform: translateY(-50%); /* 見出しの縦中央に合わせる */
	width: 120px;                /* 長さはお好みで */
	height: 2px;
	background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.flow__title{
  margin: 0 0 50px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}
  
/* 注釈（小さめ) */
.flow__note{
	margin: 0;
	color:#222;
	line-height: 1.9;
	font-size: 16px;
  }
  .flow__note + .flow__note{ margin-top: 30px; }

  .flow__note_mini{
	margin: 0;
	color:#222;
	line-height: 1.9;
	font-size: 12px;
  }

  .flow__note_mini2{
	margin-top: 50px;
	color:#222;
	line-height: 1.9;
	font-size: 12px;
  }



  /* ==== Flow 本文レイアウト ==== */
/* 横並び 2 カラム */
.flow__pair{
  display:flex;
  gap:48px;
  align-items:flex-start;
  margin-top:20px;
}
.flow__pair .flow__col{ 
	flex:1; 
}
.flow__pair img{ 
	width:100%; 
	height:auto;
	 display:block;
 }

/* SPだけ縦並びにしたい場合だけ入れる（横並びのままで良ければこの @media を削除） */
@media (max-width: 768px){
  .flow__pair{ flex-direction:column; gap:32px; }
}

  /* SP微調整 */
  @media (max-width: 768px){
	.flow{ padding: 72px 0 88px; }
	.flow .section__eyebrow::after{ width:60px; }
	.flow__title{ font-size: clamp(20px, 4.6vw, 28px); }
  }



.merit{ 
	padding: 100px 0 120px; 
}
.merit__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.merit .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.merit .section__eyebrow::after{
  content:"";
  position:absolute; 
  left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
  top: 50%;
  bottom: auto;
  transform: translateY(-50%); /* 見出しの縦中央に合わせる */
  width: 120px;                /* 長さはお好みで */
  height: 2px;
  background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.merit__title{
  margin: 0 0 50px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}

/* 2段目（太め） */
.merit__lead{
  margin: 0 0 10px;
  font-weight: 700;
  color:#222;
  line-height: 1.9;
  font-size: clamp(16px, .4vw + 14px, 22px);
}

/* 注釈（小さめ) */
.merit__note{
  margin: 0 0 30px;
  color:#222;
  line-height: 1.9;
  font-size: 16px;
}
.merit_note + .merit__note{ margin-top: 6px; }

/* SP微調整（見出し線を短く、文字少し小さく） */
@media (max-width: 768px){
  .merit__wrap{ max-width: none; padding-right: 16px; padding-left: 16px; }
  .merit .section__eyebrow::after{ width: 60px; bottom: -6px; }
  .merit__title{ font-size: clamp(20px, 4.6vw, 28px); line-height: 1.55; }
  .merit__lead{ font-size: 16px; }
  .merit__note{ font-size: 12.5px; }
}



.contact{ 
	padding: 120px 0 120px; 
	background: #F5F5F5;
}
.contact__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.contact .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.contact .section__eyebrow::after{
	content:"";
	position:absolute; 
	left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
	top: 50%;
	bottom: auto;
	transform: translateY(-50%); /* 見出しの縦中央に合わせる */
	width: 120px;                /* 長さはお好みで */
	height: 2px;
	background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.contact__title{
  margin: 0 0 50px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}
  
/* 注釈（小さめ) */
.contact__note{
	margin: 0;
	color:#222;
	line-height: 1.9;
	font-size: 16px;
  }
  .contact__note + .contact__note{ margin-top: 30px; }



  /* SP微調整 */
  @media (max-width: 768px){
	.contact{ padding: 72px 0 88px; }
	.contact .section__eyebrow::after{ width:60px; }
	.contact__title{ font-size: clamp(20px, 4.6vw, 28px); }
  }

/* カード枠 */
.contact__card{
	background:#fff;
	padding:70px 70px 70px;
	margin-top:50px;
  }
  
  /* 2カラムのフォーム */
  .contact__form{
	display:grid;
	grid-template-columns: 180px 1fr; /* 左ラベル／右入力 */
	gap:30px 80px;
  }
  
  .contact__form label{
	font-weight:700;
	font-size: 16px;
	color:#333;
	align-self:center;
  }
  
  /* 入力部品の共通 */
  .contact__form input,
  .contact__form select,
  .contact__form textarea{
	width:100%;
	box-sizing:border-box;
	height:44px;
	padding:10px 12px;
	border:2px solid #ddd;
	border-radius:4px;
	background:#fff;
	font:inherit;
  }
  .contact__form textarea{
	min-height:120px;
	resize:vertical;
  }
  
  /* 送信ボタン */
  .contact__actions{
	grid-column:1 / -1;   /* ボタンは2列ぶち抜きで中央 */
	text-align:center;
	margin-top:8px;
  }
  .contact__submit{
	margin-top: 20px;
	appearance:none;
	border:0;
	background:#D92121;   /* サイトの赤 */
	color:#fff;
	font-weight:400;
	padding:14px 60px;
	border-radius:2px;
	cursor:pointer;
	font-size: 24px;
  }
  .contact__submit:hover{ opacity:.7; }


.faq{ 
	padding: 120px 0 120px; 
}
.faq__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.faq .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.faq .section__eyebrow::after{
  content:"";
  position:absolute; 
  left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
  top: 50%;
  bottom: auto;
  transform: translateY(-50%); /* 見出しの縦中央に合わせる */
  width: 120px;                /* 長さはお好みで */
  height: 2px;
  background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.faq__title{
  margin: 0 0 50px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}

/* SP微調整（見出し線を短く、文字少し小さく） */
@media (max-width: 768px){
  .faq__wrap{ max-width: none; padding-right: 16px; padding-left: 16px; }
  .faq .section__eyebrow::after{ width: 60px; bottom: -6px; }
  .faq__title{ font-size: clamp(20px, 4.6vw, 28px); line-height: 1.55; }

}


/* リスト全体と区切り線 */
.faq__list{list-style:none;margin:0;padding:0;border-top:none;}
.faq__item:first-child{ border-top: none; }
.faq__item{border-bottom:1px solid #e7e7e7}


/* 質問ボタンと回答ブロックの左に余白を確保 */
.faq__q{
	display:flex;
	align-items:center;
	gap:12px;
	width:100%;
	padding:20px 16px 20px 68px;   /* 左は Q の分だけ空ける */
	text-align:left;
	background:transparent;
	border:0;
	box-shadow:none;
	cursor:pointer;
	-webkit-appearance:none; /* iOS/Safari */
	appearance:none;
	outline:none;            /* 独自のフォーカスにするなら */
  }
  .faq__q:focus-visible{
	outline:2px solid #D92121;   /* 任意のフォーカス */
	outline-offset:2px;
  }
  
  /* Q / A マーク（あなたの現状CSSのままでOKだが参考に再掲） */
  .faq__q{ position:relative; }
  .faq__a{ 
	position:relative; 
	padding-left:68px; 
	padding-bottom: 20px;
	padding-top: 20px;
	display: none;	
}


.faq__item.is-open .faq__a{
	display:block;
  }

  .faq__qmark,.faq__amark{
	position:absolute; left:16px; line-height:1;
	width:auto; height:auto; border:none; background:transparent; border-radius:0;
  }
  .faq__qmark{ 
	top:50%; 
	transform:translateY(-50%);
	 font-size:36px; 
	 font-weight:400;
	color:#D92121; }

  .faq__amark{ 
	font-size:36px;
	position: absolute; 
	font-weight:400; 
	top: 50%;
	transform: translateY(-50%);    /* ← これで縦中央 */
	color:#8A8A8A; }
  
  /* 質問テキストと＋/− */
  .faq__qtext{ 
	flex:1; 
	font-weight:700;
	 color:#222; 
	 line-height:1.8; 
	font-size: 20px;
	}

	.faq__a p{ 
		font-size: 16px;
		margin: 0;
		}
  .faq__toggle{ 
	position:relative; width:20px; height:20px; flex:0 0 20px; }
	.faq__toggle::before,
	.faq__toggle::after{
	  content:""; position:absolute; left:2px; right:2px; top:9px;
	  height:2px; background:#999; border-radius:1px; transition:opacity .2s, transform .2s;
	}
	.faq__toggle::after{ transform:rotate(90deg); }       /* 縦棒 → プラス */
	.faq__item.is-open .faq__toggle::after{ opacity:0; }  
  .faq__item.is-open .faq__toggle::after{ 
	display:block; 
	opacity:0; } /* 開いたら横棒だけ＝マイナス */


	.confirm-action {
		display: flex;
		flex-direction: column;   /* 縦並び */
		align-items: center;      /* 中央寄せ */
		gap: 16px;                /* ボタンとリンクの間隔 */
		margin-top: 20px;
		text-align: center;       /* 子要素のテキストも中央寄せ */
	  }

	  /* 修正リンクの見た目（画像のようにシンプルな下線） */
	  .confirm-edit{
		appearance:none;
		border:0;
		background:transparent;
		padding:0;
		font:inherit;
		color:#333;
		text-decoration:underline;
		cursor:pointer;
	  }
	  
	  /* aタグ版を使う場合の体裁 */
	  .confirm-edit-link a{
		color:#333;
		text-decoration:underline;
		font-size:16px;
	  }


	  /* ==============================
    Thanks
============================== */
.thanks{ 
	padding: 120px 0 120px; 
	background: #F5F5F5;
}
.thanks__wrap{
	max-width: 1040px;      /* お好みで 760〜960px などに */
	margin: 0 auto;        /* ← 中央寄せ（左右オート） */
  	text-align: left;
}

/* 赤い小見出し＋短い下線 */
.thanks .section__eyebrow{
  position: relative;
  display: inline-block;
  color: #D92121;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 18px;
}
.thanks .section__eyebrow::after{
	content:"";
	position:absolute; 
	left: calc(100% + 12px); /* 文字のすぐ右、12px空ける */
	top: 50%;
	bottom: auto;
	transform: translateY(-50%); /* 見出しの縦中央に合わせる */
	width: 120px;                /* 長さはお好みで */
	height: 2px;
	background:#D92121;
}

/* 1段目（大きめ太字・複数行） */
.thanks__title{
  margin: 0 0 50px;
  font-weight: 900;
  color:#222;
  line-height: 1.6;
  letter-spacing: .02em;
  /* 可変だけど上限は抑える（デザイン2枚目くらい） */
  font-size: clamp(22px, 1.2vw + 18px, 32px);
}
  /* 本文（中央寄せ・行間広め） */
  .thanks__body{
	text-align: center;
	color:#333;
	line-height: 2;
	font-size: 16px;
  }
  .thanks__body p{ margin: 0 0 18px; }
  
  /* 下部リンク */
  .thanks__link{
	margin-top: 40px;
	text-align: center;
  }
  .thanks__link a{
	color:#333;
	text-decoration: underline;
  }
  
  /* SP調整 */
  @media (max-width: 768px){
	.thanks{ padding: 80px 0 96px; }
	.thanks__wrap{ max-width: none; padding: 0 16px; }
	.thanks .section__eyebrow::after{ width: 60px; }
	.thanks__title{ font-size: clamp(20px, 4.6vw, 28px); line-height: 1.55; }
	.thanks__body{ font-size: 14px; line-height: 1.9; }
  }
  
	  