@charset "utf-8";

/* CSS関数設定 */
:root {
	/* カラーパレット */
	--RED01:#930000;
	--RED02:#C2262D;
	--PINK:#FCCFD2;
  --BEIGE: #936600;
	--KHAKI: #8D9300;
	--GREEN: #025D1A;
	--GREEN02: #C3E3D9;
	--GREEN03: #038760;
	--BLUE: #003871;
	--BLUE02:#D3DEF1;
	--BLUE03: #1853B5;
	--GRAY:#D9D9D9;
	--GRAY02:#E6E6E6;
}

/*  */
figure figcaption{
  font-weight: 400;
  font-size: var(--FZ_18);
}
body p,
ul li{
  font-size: var(--FZ_BASE);
  line-height: 1.6;
}
.cate-wrap{
	margin-bottom: var(--SPACE_100);
}
.cateFlex{
	display: flex;
	justify-content: space-between;
	gap: 20px;
}
.cateFlex-inner{
  gap: 10%;
	margin-left: auto;
	margin-right: auto;
}
.mgb80{
  margin-bottom: var(--SPACE_80);
}
.mgb40{
	margin-bottom: var(--SPACE_40);
}
.center{
	text-align: center;
}
@media screen and (min-width: 768px){
	.sub-inner{
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
	.cateFlex-inner{
		width: 80%;
	}
}
@media screen and (max-width: 767px){
	.cateFlex-inner{
		width: 95%;
	}
	.cateFlex--sp{
		flex-direction: column;
		gap: 10px;
	}
}


.cateTtl{
  background-color:var(--BLACK);
  color: var(--WHITE);
  border-radius: 10px;
  padding: 10px;
	font-size: var(--FZ_22);
  font-weight: bold;
  line-height: 1.4;
}
.cateTtl-flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
.cateTtl-flex__img{
  width: 30%;
  max-width: 250px;
}
.cateTtl-flex__txt{
  flex: 1;
  font-weight: 600;
}
.flowTtl{
  font-weight: 600;
  display: flex;
	gap: 10px;
	align-items: flex-start;
}
.flowTtl span:nth-child(2){
	flex: 1;
}
.flowTtl__num{
  color: var(--WHITE);
	display: inline-block;
	text-align: center;
	line-height: 1.8;
}
.flowTtl--red {
  color: var(--RED01);
}
.flowTtl__num--red{
  background-color: var(--RED01);
}
.flowTtl--beige{
  color: var(--BEIGE);
}
.flowTtl__num--beige{
  background-color: var(--BEIGE);
}
.flowTtl--khaki{
	color: var(--KHAKI);
}
.flowTtl__num--khaki{
  background-color: var(--KHAKI);
}
.flowTtl--green{
	color: var(--GREEN);
}
.flowTtl__num--green{
  background-color: var(--GREEN);
}
.flowTtl--blue{
	color: var(--BLUE);
}
.flowTtl__num--blue{
  background-color: var(--BLUE);
}
.cateFlex--flow1 > p:nth-child(1){
  width: 30%;
}
.cateFlex--flow1 > p:nth-child(2){
  width: 60%;
}
.flow-subTtl{
  font-size: var(--FZ_26);
  font-weight: 600;
}

@media screen and (min-width: 768px){
	.cateTtl-flex__txt{
		font-size:var(--FZ_50);
	}
	.flowTtl{
		font-size: var(--FZ_40);
	}
	.flowTtl__num{
		width: 70px;
		margin-top: 6px;
		border-radius: 10px;
	}
	.flowTtl__subtxt{
		font-size: var(--FZ_32);
		padding-left: 70px;
	}
}
@media screen and (max-width: 767px){
	.cateTtl-flex__txt{
		font-size:var(--FZ_38);
	}
	.flowTtl{
		font-size: var(--FZ_32);
	}
	.flowTtl__num{
		width: 35px;
		margin-top: 3px;
		border-radius: 5px;
	}
	.flowTtl__subtxt{
		font-size: var(--FZ_22);
		padding-left: 20px;
	}
}

.cate-5 .cateFlex-inner img{
	max-width: 450px;
	margin: 0 auto 0 0;
}

.cateTtl-flex__change{
	display: block;
	font-size: var(--FZ_32);
}
.changeTtl-list{
	margin-right: auto;
	margin-left: auto;
}
.flowTtl--red02{
	color: var(--RED02);
	align-items: center;
}
.flowTtl__num--red02{
  background-color: var(--RED02);
}
.flowTtl--blue02{
	color: var(--BLUE03);
	align-items: center;
}
.flowTtl__num--blue02{
  background-color: var(--BLUE03);
}
.flowTtl--green02{
	color: var(--GREEN03);
	align-items: center;
}
.flowTtl__num--green02{
  background-color: var(--GREEN03);
}
@media screen and (min-width: 768px){
	.changeTtl-list{
		width: 60%;
	}
	.changeTtl-list li:not(:last-child){
		margin-bottom: 20px;
	}
	.flowTtl__num--mini{
		width: 48px;
	}
}
@media screen and (max-width: 767px){
	.changeTtl-list{
		width: 85%;
	}
	.changeTtl-list li:not(:last-child){
		margin-bottom: 10px;
	}
	.flowTtl__num--mini{
		width: 32px;
	}
}
.changeBox__inner{
	width: 90%;
	margin: 0 auto;
	padding: 40px 0;
}
.changeBox .flowTtl{
	justify-content: center;
	align-items: center;
}

.changeBox--pink .flowTtl{
	background-color: var(--PINK);
}
.changeBox--pink{
	border: 5px solid  var(--PINK);
}
.changeBox--blue .flowTtl{
	background-color: var(--BLUE02);
}
.changeBox--blue{
	border: 5px solid  var(--BLUE02);
}
.changeBox--green .flowTtl{
	background-color: var(--GREEN02);
}
.changeBox--green{
	border: 5px solid  var(--GREEN02);
}

.changeBox__bg--gray{
	background-color: var(--GRAY);
}
.cate__font--30{
	font-size: var(--FZ_26);
	font-weight: bold;
}

@media screen and (min-width: 768px){
.cateFlex__pink > p:nth-child(1){
	width: 70%;
}
.cateFlex__pink > p:nth-child(2){
	width: 28%;
}
.changeBox__bg--gray{
	padding: 20px 0;
}
.changeBox .flowTtl{
	padding: 20px 0;
}
}
@media screen and (max-width: 767px){
	.cateFlex__pink > p:nth-child(2){
		width: 70%;
		max-width: 200px;
		margin: 0 auto;
	}
	.changeBox__bg--gray{
		padding: 10px 5px;
	}
	.changeBox .flowTtl{
		padding: 10px 0;
	}
}

.cylinder-bg--gray{
	background-color: var(--GRAY);
	padding: 20px;
}
.cateBtn{
	width: 80%;
	margin: 0 auto;
}
.cateBtn a{
	display: block;
	text-align: center;
	color: var(--WHITE)!important;
	font-size:var(--FZ_22);
	padding: 10px 0;
	border-radius: 10px;
	font-weight: bold;
	text-decoration: none!important;
}
.cateBtn--red a{
	background-color: var(--RED02);
}
.text-link--blue a{
	color: #004EFF!important;
}
.cylinder-bg--blue{
	background-color:#68799A;
	padding: 20px;
	color: var(--WHITE);
	font-weight: bold;
}
.cylinder-bg--gray02{
	background-color:var(--GRAY02);
	padding: 20px;
}
.flowsubTtl{
display: flex;
gap: 10px;
align-items: center;
justify-content: center;
}
.blueimg-wiz{
	width: 90%;
	max-width: 500px;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (min-width: 768px){
	.cateFlex-1col .cylinder-bg--gray02{
		width: 50%;
		margin: 0 auto;
	}
	.cateFlex__blue > p{
		width: 58%;
	}
	.cateFlex__blue > div{
		width: 40%;
	}
}
@media screen and (max-width: 767px){
	.cateFlex__blue > div img{
		width: 70%;
		max-width: 200px;
		margin: 0 auto;
	}
}


.green-flow01 figure{
	position: relative;
}
.green-flow01 figure + figure::before{
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/arrow03.svg)center / contain no-repeat;

}
.green-flow01 figure:nth-child(1){
	background-color: var(--GRAY);
	font-weight: bold;
}
.green-arrow{
	width: 60%;
	margin: 0 auto;
}
.green-flow02{
	border-radius: 20px;
	padding: 20px;
	border: 4px solid var(--GRAY);
}
.green-flow02 figure{
	text-align: left;
}
.adviceBox{
	background-color:#FBEDED;
	border-radius: 20px;
	border: 5px solid var(--RED02);
}
.advice-ttl{
	background-color: var(--RED02);
	color: var(--WHITE);
	font-weight: bold;
}
.adviceBox .cateTtl-flex{
	width: 90%;
	margin: 0 auto;
}
figure figcaption strong{
	font-size: var(--FZ_22);
}
.changeBox--gray{
	border: 5px solid  var(--GRAY);
}
.cateFlex__gray{
	align-items: flex-end;
}
@media screen and (min-width: 768px){
	.cateFlex__green > p{
		width: 55%;
	}
	.cateFlex__green > div{
		width: 45%;
	}
	.green-flow01 figure + figure::before{
		width: 30px;
		height: 30px;
		left: -23px;
	}
}
@media screen and (max-width: 767px){
	.green-flow01 figure + figure::before{
		width: 15px;
		height: 15px;
		left: -20px;
	}
	.adviceBox .cateTtl-flex{
		align-items: flex-start;
		margin-bottom: 20px;
	}
}


/* よくある質問 */
.cate-faq dt,
.cate-faq dd{
	position: relative;
	font-size: var(--FZ_22);
	font-weight: bold;
}
.cate-faq dt::before,
.cate-faq dd::before{
	position: absolute;
	display: inline-block;
	left: 0;
	color: var(--WHITE);
	font-weight: bold;
	text-align: center;
}
.cate-faq dt::before{
	content: "Q";
	background-color: #F0932B;
}
.cate-faq dd::before{
	content: "A";
	background-color:#6AB04D;
}
.cate-faq dt{
	margin-bottom: 40px;
}
.cateTtl-flex--center{
	justify-content: center;
}
.cateTtl-flex--center .cateTtl-flex__txt{
	flex: initial;
}
@media screen and (min-width: 768px){
	.cate-faq dt,
	.cate-faq dd{
		padding-left: 80px;
	}
	.cate-faq dt::before,
	.cate-faq dd::before{
		font-size: var(--FZ_40);
		width: 70px;
		border-radius: 15px;
		line-height: 1.6;
		top: 50%;
		transform: translateY(-50%);
	}
	.illust-faq{
		width: 30%;
    max-width: 120px;
	}
}
@media screen and (max-width: 767px){
	.cate-faq dt,
	.cate-faq dd{
		padding-left: 60px;
	}
	.cate-faq dt::before,
	.cate-faq dd::before{
		font-size: var(--FZ_38);
		width: 50px;
		border-radius: 11px;
    line-height: 2;
		top: 0;
	}
	.illust-faq{
		width: 30%;
    max-width: 70px;
	}
}


.text-link--red a{
	color: #C1272C!important;
}
.gray-border__radius{
	border: 5px solid var(--GRAY);
	padding: 20px;
	border-radius: 30px;
}


  /* 2025.2.6追加 */
.fs-body-category .gNav--typeA li a{
	font-size: var(--FZ_14) !important;
}
.side__cateNav ul li a{
  font-size: var(--FZ_14) !important;
}
