@charset "utf-8";
/* CSS Document */



/*mainvisual
***************************************/
#loadimg {
	clear: both;
	text-align: center;
}
#loading {
	display: none;
}
#loadimg img {
	width: 32px;
	padding: 20% 0;
}

#mainvisual {
	position:relative;
	
	z-index:7;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#mainvisual p {
	font-size: clamp(14px, 1.2vw, 18px);
	line-height: 2;
	position: absolute;
	top: 41%;
	left: 58%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	margin: auto;
	display: inline-block;
	z-index: 10;
	width: 43%;
}

#mainvisual p strong {
	font-size:clamp(24px, 3.2vw, 60px);
	line-height:1.2;
	color:#f47083;
	display:block;
	font-weight:normal;
	margin-bottom:3rem;
}

#mainvisual ul.contact_btn {
	position: absolute;  
	top: 66%;
  	left: 53%;
	z-index:20;
	width: 35%;
	
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#mainvisual ul.contact_btn li {
	width:48%;
}

#mainvisual ul.contact_btn li a {
	display:block;
	padding:2rem 2rem 2.4rem 2rem;
	color:#FFF;
	border-radius:6rem;
	text-align:center;
	font-size:clamp(14px, 1vw, 18px);
	position:relative;
}

#mainvisual ul.contact_btn li a span:after {
	content:url(../../images/icon_arrow_white_circle.png);
	position:absolute;
	
	/*中央*/
	top: 50%;
	transform: translateY(-50%) ;
	-webkit- transform: translateY(-50%);
	margin-left:0.5rem;
}

#mainvisual ul.contact_btn li:nth-child(1) a {
	background:#ff0024;
}

#mainvisual ul.contact_btn li:nth-child(2) a {
	background:#06c755;
}

#mainvisual .badge {
	position: absolute;
	top: 27%;
	left: 78%;
	z-index: 20;
	width: 11%;
}

#mainvisual .slick-slide {
	padding:0;
}

@media (max-width: 1600px) {
#mainvisual p br.brnone01 {
	display:none;
}
#mainvisual ul.contact_btn {
	width:44%;
}
}

@media (max-width: 1200px) {
#mainvisual p {
	line-height: 1.6;
}
#mainvisual p strong {
	margin-bottom:1.5rem;
}
#mainvisual ul.contact_btn {
	width:46%;
}

#mainvisual ul.contact_btn li a {
	padding:2rem 1rem 2.4rem 0;
	border-radius:6rem;
	letter-spacing:0;
}
}

@media (max-width: 980px) {
#mainvisual p {
}
}

@media (max-width: 480px) {
}

.index_title01 {
	text-align:center;
	color:#6d3e10;
	font-size:clamp(20px, 2.4vw, 36px);
	position:relative;
	z-index:10;
	margin-bottom:12rem;
}

.index_title01 span {
	position:absolute;
	z-index:1;
	color:rgba(240,122,139,0.1);
	/*中央*/
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	margin: auto;
	display:inline-block;
	font-size:clamp(48px, 10vw, 200px);
	font-weight:100;
	width:100%;
}

.index_title02 {
	color:#6d3e10;
	font-size:clamp(20px, 2.4vw, 36px);
	z-index:10;
}

.index_title03 {
	text-align:center;
	color:#6d3e10;
	position:relative;
    display: flex;
    align-items: center;
	font-size:clamp(20px, 1.6vw, 30px);
	margin-bottom:10rem;
	letter-spacing:0;
}

.index_title03:before,
.index_title03:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #444444;
}

.index_title03:before {
    margin-right: 2rem;
}

.index_title03:after {
    margin-left: 2rem;
}

.index_title03 span {
	position:absolute;
	width:100%;
	text-align:center;
	bottom:-2em;
	color:#c7c7c7;
	font-size: clamp(14px, 1.6vw, 24px);
}

.index_title04 {
	color:#6d3e10;
	font-size:clamp(20px, 2.4vw, 36px);
	z-index:10;
}

.index_title04 span {
  position: absolute;
  z-index: 1;
  color: rgba(240,122,139,0.1);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  margin: auto;
  display: inline-block;
  font-size: clamp(48px, 10vw, 200px);
  font-weight: 100;
  width: 100%;
  text-align: right;
}

#index01{
	background:url(../../images/index/index01_bg.jpg) no-repeat;
	background-size:cover;
	
	margin-top:-13%;
	position:relative;
	z-index:6;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#index01 .list_wrapper {
  display: flex;
  flex-wrap: wrap;       
  justify-content: center; /* 全体中央寄せ */
  gap: 45px;              /* アイテム間の余白 */
  list-style: none;
  padding: 0;
  margin: 0 auto 9rem auto;
}

#index01 .list_wrapper li {
  flex: 0 0 calc((100% - 45px * 3) / 4); /* 4列表示の幅（gap考慮） */
  box-sizing: border-box;
  text-align:center;
}

#index01 .list_wrapper li figcaption {
	margin-top:-2rem;
}

#index01 .list_wrapper li span {
	background: linear-gradient(transparent 0%,#f07a8b 0%);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	color: #fff;
	padding: .4rem 1rem;
	line-height: 2.1;
	font-size: clamp(18px, 1.8vw, 20px);
}

/* 3列表示（980px以下） */
@media screen and (max-width: 1200px) {
  #index01 .list_wrapper li {
    flex: 0 0 calc((100% - 45px * 2) / 3); /* 3列表示の幅 */
  }
}

/* 2列表示（980px以下） */
@media screen and (max-width: 980px) {
  #index01 .list_wrapper li {
    flex: 0 0 calc((100% - 45px * 1) / 2); /* 2列表示の幅 */
  }
}

/* 1列表示（480px以下） */
@media screen and (max-width: 480px) {
  #index01 .list_wrapper li {
    flex: 0 0 100%; /* 1列表示 */
  }
}

#index01 .detail_btn {
	text-align:center;
}

#index01 .detail_btn a {
	display:inline-block;
	padding:2rem 9rem;
	background:#FFF;
	border:1px solid #f07a8b;
	border-radius:6rem;
	color:#f07a8b;
	font-size:clamp(15px, 1.6vw, 20px);
	position:relative;
}

#index01 .detail_btn a span:after {
  content: url(../../images/icon_arrow_pink.png);
  position: absolute;
  top: 50%;
  right:3rem;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}


#index02 {
	background:url(../../images/index/index02_bg.jpg) no-repeat center center;
	background-size:cover;
	
	margin-top:-5%;
	position:relative;
	z-index:5;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#index02 p {
	text-align:center;
	margin-bottom:7.5rem;
	font-size: clamp(16px, 1.8vw, 20px);
}

#index02 .list_wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 基本2列 */
  gap: 30px; /* アイテム間の余白 */
}

/* 各カードのスタイル（任意で高さ揃え用） */
#index02 .list_wrapper dl {
  display: flex;
  flex-direction: column;
  background:rgba(255,255,255,0.8);
  padding:4.5rem 3rem;
  border-radius:1.5rem;
}

#index02 .list_wrapper dl dt {
	font-weight:normal;
	color:#6d3e10;
	font-size: clamp(18px, 1.8vw, 24px);
	margin-bottom:1.5rem;
}

#index02 .list_wrapper dl dt:before {
	content:url(../../images/icon_check.png);
	position:relative;
	top:3px;
	margin-right:1rem;
}

#index02 .list_wrapper dl dd {
	font-size: clamp(16px, 1.4vw, 18px);
	line-height:2;
	padding-left: 4.5rem;
}

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {
  #index02 .list_wrapper {
    grid-template-columns: 1fr; /* 1列表示 */
  }
}


#index02 .detail_btn {
	text-align:center;
	margin-top:9rem;
}

#index02 .detail_btn a {
	display:inline-block;
	padding:2rem 12rem;
	background:#f07a8b;
	border-radius:6rem;
	color:#FFF;
	font-size:clamp(15px, 1.6vw, 20px);
	position:relative;
}

#index02 .detail_btn a span:after {
  content: url(../../images/icon_arrow_white.png);
  position: absolute;
  top: 50%;
  right:3rem;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}


#index03 {
	background:url(../../images/index/index03_bg.jpg) no-repeat center center;
	background-size:cover;
	
	margin-top:-5%;
	position:relative;
	z-index:4;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#index03 p {
	text-align:center;
	margin-bottom:7.5rem;
	font-size: clamp(16px, 1.8vw, 20px);
}

#index03 .list_wrapper ul {
	display: grid;
	grid-template-columns: repeat(6, 1fr); /* 基本6列 */
	column-gap: 50px; /* 横だけ */
	row-gap: 15px;    /* 縦だけ */
	list-style: none;
	padding: 0;
	margin: 0;
}


#index03 .list_wrapper ul li:nth-child(2),
#index03 .list_wrapper ul li:nth-child(5) {
	margin-top:3rem;
}

#index03 .list_wrapper ul li:nth-child(4) {
	margin-top:6rem;
}

#index03 .list_wrapper ul li img {
	width: 100%;
	height: auto;
	display: block;
	margin-bottom:1.5rem;
}

#index03 .list_wrapper figure figcaption {
	text-align:center;
	font-size: clamp(15px, 1.8vw, 20px);
	color:#6d3e10;
	line-height:1.4;
}
#index03 .detail_btn {
	margin-top:7.5rem;
	text-align:center;
}

#index03 .detail_btn a {
	display:inline-block;
	padding:2rem 9rem;
	background:#FFF;
	border:1px solid #f07a8b;
	border-radius:6rem;
	color:#f07a8b;
	font-size:clamp(15px, 1.6vw, 20px);
	position:relative;
}

#index03 .detail_btn a span:after {
  content: url(../../images/icon_arrow_pink.png);
  position: absolute;
  top: 50%;
  right:3rem;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}


/* レスポンシブ対応 */
@media screen and (max-width: 980px) {
  #index03 .list_wrapper ul {
    grid-template-columns: repeat(3, 1fr); /* 3列表示 */
	column-gap: 30px; /* 横だけ */
  }
}

@media screen and (max-width: 768px) {
  #index03 .list_wrapper ul {
    grid-template-columns: repeat(2, 1fr); /* 2列表示 */
  }
}

@media screen and (max-width: 480px) {
  #index03 .list_wrapper ul {
    grid-template-columns: 1fr; /* 1列表示 */
  }
}


#index04 {
	background:url(../../images/index/index04_bg.jpg) no-repeat center center;
	background-size:cover;
	
	margin-top:-5%;
	position:relative;
	z-index:3;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#index04 .title_box {
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-bottom:12rem;
	position:relative;
}


#index04 .title_box span {
	position:absolute;
	z-index:1;
	color:rgba(240,122,139,0.1);
	/*中央*/
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	margin: auto;
	display:inline-block;
	font-size:clamp(48px, 10vw, 200px);
	font-weight:100;
	width:100%;
	text-align:center;
}


#index04 .title_box h2 {
	width:46%;
	padding-left:12%;
	line-height:1.4;
}

#index04 .title_box p {
	width:52%;
	font-size: clamp(16px, 1.4vw, 20px);
}

#index04 .list_wrapper {
	display: grid;
	grid-template-columns: repeat(4, 1fr); /* デフォルト4列 */
	gap: 60px; /* アイテム間の余白 */
	margin-bottom:9rem;
}

#index04 .list_wrapper dl {
	background: #fff;
	overflow: hidden;
	border-radius:3rem;
	box-shadow: 10px 10px 0px 0px #ffedef;
}

#index04 .list_wrapper dl dt img {
	width: 100%;
	height: auto;
	display: block;
}

#index04 .list_wrapper dl dd {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between; /* ボタンを下に固定 */
	background:#FFF;
	padding:2rem;
}

#index04 .list_wrapper dl dd h4 {
	margin-bottom:1.5rem;
	color:#6d3e10;
	font-size: clamp(18px, 1.8vw, 24px);
	letter-spacing:0;
	text-align:center;
}

#index04 .list_wrapper dl dd p {
	line-height:1.6;
	margin-bottom:1.5rem;
	font-size: clamp(16px, 1.4vw, 18px);
	line-height:1.8;
}

#index04 .list_wrapper .detail_btn {
	text-align:center;
}

#index04 .list_wrapper .detail_btn a {
	width:70%;
	display:inline-block;
	padding:1rem 1rem 1.25rem 1rem;
	text-align:center;
	color:#FFF;
	background:#f07a8b;
	border-radius:1rem;
	font-size: clamp(16px, 1.4vw, 18px);
	position:relative;
}

#index04 .list_wrapper .detail_btn a:after {
	content:url(../../images/icon_arrow_white02.png);
	
	/*中央*/
	position: absolute;
	top: 50%;
	right:2rem;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	margin: auto;
	display:inline-block;
}

/* レスポンシブ対応 */
@media screen and (max-width: 1480px) {
  #index04 .list_wrapper {
    grid-template-columns: repeat(3, 1fr); /* 3列表示 */
	gap: 30px; /* アイテム間の余白 */
  }
}

@media screen and (max-width: 980px) {
  #index04 .list_wrapper {
    grid-template-columns: repeat(2, 1fr); /* 2列表示 */
	gap: 20px; /* アイテム間の余白 */
  }
}

@media screen and (max-width: 480px) {
  #index04 .list_wrapper {
    grid-template-columns: 1fr; /* 1列表示 */
	gap: 10px; /* アイテム間の余白 */
  }
}


#index04 .list_wrapper02 ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 基本3列 */
  column-gap: 55px; /* 横だけ */
  row-gap: 30px;    /* 縦だけ */
  list-style: none;
  padding: 0;
  margin: 0;
}

#index04 .list_wrapper02 ul li a {
  display: block;
  text-decoration: none;
  color: inherit;
  background:#FFF;
  padding:2rem 3rem;
  border-radius:6rem;
  border:1px solid #f07a8b;
  color:#f07a8b;
	font-size: clamp(15px, 1.8vw, 20px);
}

#index04 .list_wrapper02 ul li a span {
	position:relative;
	top:-9px;
}

#index04 .list_wrapper02 ul li a span:before {
	content:url(../../images/icon_heart.png);
	margin-right:1.5rem;
	position:relative;
	top:9px;
}


/* レスポンシブ対応 */
@media screen and (max-width: 980px) {
  #index04 .list_wrapper02 ul {
    grid-template-columns: repeat(2, 1fr); /* 2列表示 */
  }
}

@media screen and (max-width: 480px) {
  #index04 .list_wrapper02 ul {
    grid-template-columns: 1fr; /* 1列表示 */
  }
}




#index05 {
	background:url(../../images/index/index05_bg.png) no-repeat left top #fffcf6;
	background-size:cover;
	
	margin-top:-5%;
	position:relative;
	z-index:2;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#index05 .title_box {
	margin-bottom:9rem;
	position:relative;
}

#index05 .title_box p {
	margin-top:3rem;
	font-size:clamp(16px, 1.4vw, 20px);
}

#index05 .list_wrapper {
	margin-left:12%;
}

#index05 .bl_voiceList_column {
  display: grid;
  grid-template-columns: 21.65% 78.34%;
  gap: 30px;
  padding:2rem;
  background:rgba(255,255,255,0.8);
  align-items: center; /* ← figure と div を上下中央にそろえる */
  border-radius:0 2rem 0 2rem;
  margin-bottom:2.5rem;
}

#index05 .bl_voiceList_column:nth-child(1) {}
#index05 .bl_voiceList_column:nth-child(2) { margin-left:4.5rem; width:100%;}
#index05 .bl_voiceList_column:nth-child(3) { margin-left:9rem; width:100%;}

#index05 .bl_voiceList_column figure {
  margin: 0;
  aspect-ratio: 1 / 1;   /* 正方形を維持 */
  overflow: hidden;      /* はみ出しカット */
}

#index05 .bl_voiceList_column figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;     /* 中央でトリミングして正方形に収める */
}

#index05 .bl_voiceList_content {
  display: flex;
  flex-direction: column;
  justify-content: center; /* ← 中の文字を縦中央に */
  width:94%;
}

#index05 .bl_voiceList_content strong {
	font-size:clamp(15px, 1.6vw, 20px);
	display:block;
	margin-bottom:1rem;
	font-weight:normal;
	padding:1rem 0 1rem 4.5rem;
	background:url(../../images/icon_futaba.png) no-repeat left center;
}

#index05 .bl_voiceList_content h3 {
	color:#6d3e10;
	margin-bottom:1.5rem;
	font-size:clamp(15px, 1.6vw, 20px);
}

#index05 .bl_voiceList_content p {
	font-size: clamp(16px, 1.4vw, 18px);
}

#index05 .detail_btn {
	text-align:right;
	margin-top:6rem;
	margin-right:-9rem;
}

#index05 .detail_btn a {
	display:inline-block;
	padding:2rem 12rem;
	background:#a7b83f;
	border-radius:6rem;
	color:#FFF;
	font-size:clamp(15px, 1.6vw, 20px);
	position:relative;
}

#index05 .detail_btn a span:after {
  content: url(../../images/icon_arrow_white.png);
  position: absolute;
  top: 50%;
  right:3rem;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}

#index06 {
	background-image: url(../../images/index/index06_bg01.png), url(../../images/index/index06_bg02.png);
	background-repeat: no-repeat, no-repeat;
	background-size: auto, auto;
	background-position: left top, right bottom;
	background-color: #fff9fa;
	
	margin-top:-5%;
	position:relative;
	z-index:1;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#index06 .news_item {
  display: flex;
  gap: 45px;
  margin-bottom: 6rem;
}

#index06 .news_item .news_date {
  min-width: 100px;   /* 左側の日付幅固定 */
}

#index06 .news_item .news_content a {
	text-decoration: none;
	margin-bottom: 5px;
	font-size: clamp(16px, 1.4vw, 18px);
	position:relative;
	top:-3px;
}

#index06 .news_item .news_content p {
  margin:1.5rem 0 0 0;
  line-height: 1.4;
}

#index06 .detail_btn {
	text-align:center;
}

#index06 .detail_btn a {
	display:inline-block;
	padding:2rem 12rem;
	background:#FFF;
	border:1px solid #f07a8b;
	border-radius:6rem;
	color:#f07a8b;
	font-size:clamp(15px, 1.6vw, 20px);
	position:relative;
}

#index06 .detail_btn a span:after {
  content: url(../../images/icon_arrow_pink.png);
  position: absolute;
  top: 50%;
  right:3rem;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}



#index07 {
	background:url(../../images/index/index07_bg.jpg) no-repeat top center;
	background-size:cover;
	margin-top:-5%;
	position:relative;
	z-index:0;
	-webkit-mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
	mask-image: url(../../images/wave.svg);
	mask-repeat: no-repeat;
	mask-position: bottom center;
	mask-size: 100% auto;
}

#index07 .post_wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3列均等 */
  gap: 60px; /* 各ボックス間の余白 */
}

#index07 .post_box {
	border-radius:1rem;
	padding-bottom:4.5rem;
}

#index07 .post_box .detail_btn {
	width:calc(100% - 6rem);
	margin:0 auto;
}

#index07 .post_box .detail_btn a {
	width:100%;
	text-align:center;
	display:inline-block;
	text-align:center;
	padding:1.25rem 1.5rem;
	color:#FFF;
	border-radius:6rem;
}

#index07 ul.blog-list {
	padding:2rem 2rem 1rem 2rem;
}

#index07 ul.blog-list li span.blog-date {
	font-size:14px;	
}

#index07 ul.blog-list li span.blog-term {
	font-size:12px;
	display:inline-block;
	padding:0.25rem;
	color:#FFF;
}

#index07 ul.blog-list li span.blog-term a {
	color:#FFF;
}

#index07 .post_box h3 {
	font-size: clamp(20px, 1.8vw, 30px);
	text-align:center;
}

#index07 .post_box h3 span {
	display:block;
	margin-top:3rem;
	margin-bottom:1.5rem;
}

#index07 .post_box ul.blog-list li {
	padding-bottom:2rem;
	margin-bottom:2rem;
}

#index07 .post_box ul.blog-list li h4 {
	margin-top:0.75rem;
	margin-bottom:0.75rem;
	line-height:1.4;
}

#index07 ul.blog-list li p {
	font-size:14px;
	line-height:1.4;
}

#index07 .post_box:nth-child(1) { background:#fff9fa;}
#index07 .post_box:nth-child(1) h3 { color:#d3243e;}
#index07 .post_box:nth-child(1) .detail_btn a { background:#f07a8b;}
#index07 .post_box:nth-child(1) ul.blog-list li { border-bottom:1px dotted #f07a8b;}
#index07 .post_box:nth-child(1) ul.blog-list li span.blog-term { background:#f07a8b;}
#index07 .post_box:nth-child(1) ul.blog-list li h4 a { color:#f07a8b;}

#index07 .post_box:nth-child(2) { background:#fffcf7; position:relative; top:3rem;}
#index07 .post_box:nth-child(2) h3 { color:#532900;}
#index07 .post_box:nth-child(2) .detail_btn a { background:#906840;}
#index07 .post_box:nth-child(2) ul.blog-list li { border-bottom:1px dotted #906840;}
#index07 .post_box:nth-child(2) ul.blog-list li span.blog-term { background:#906840;}
#index07 .post_box:nth-child(2) ul.blog-list li h4 a { color:#906840;}

#index07 .post_box:nth-child(3) { background:#fdfff1; position:relative; top:6rem;}
#index07 .post_box:nth-child(3) h3 { color:#3b4b27;}
#index07 .post_box:nth-child(3) .detail_btn a { background:#a7b83f;}
#index07 .post_box:nth-child(3) ul.blog-list li { border-bottom:1px dotted #a7b83f;}
#index07 .post_box:nth-child(3) ul.blog-list li span.blog-term { background:#a7b83f;}
#index07 .post_box:nth-child(3) ul.blog-list li h4 a { color:#a7b83f;}

#main section#index08 {
	background: linear-gradient(to bottom,  #ffffff 0%,#fff9fa 100%);
	padding-top:24rem;
	margin-top:-5%;
}

#index08 p {
	text-align:center;
	margin-bottom:7.5rem;
	font-size: clamp(16px, 1.8vw, 20px);
}

#index08 .list_wrapper {
  display: grid;
  grid-template-columns: repeat(5, 1fr); /* 5列表示 */
  gap: 70px; /* アイテム間の余白を広めに */
  list-style: none;
  padding: 0;
  margin: 0 auto;
  position:relative;
  z-index:1;
}

#index08 .list_wrapper:after {
	content:"";
	width:90%;
	height:5px;
	background:#ffd3d9;
	position:absolute;
	top:55%;
	left:5%;
	z-index:-1;
}


/* 各アイテムのスタイル */
#index08 .list_wrapper li {
  text-align: center; /* 画像・テキスト中央寄せ */
}

#index08 .list_wrapper li:nth-child(2),
#index08 .list_wrapper li:nth-child(4) {
	margin-top:3rem;
}

#index08 .list_wrapper li p {
	margin-bottom:3rem;
	line-height:1;
	display:flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:         wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	letter-spacing:0;
}

#index08 .list_wrapper li p span {
	font-size:clamp(24px, 3.2vw, 60px);
	color:#f07a8b;
	font-weight:100;
	line-height:0.4;
	width:28%;
	letter-spacing:-2px;
}

#index08 .list_wrapper li p span a {
	color:#FFF;
}

#index08 .list_wrapper li p strong {
	font-size: clamp(16px, 1.4vw, 18px);
	font-weight:normal;
	color:#6d3e10;
	text-align:left;
	width:72%;
}

/* 4列表示（1200px以下） */
@media screen and (max-width: 1200px) {
  #index08 .list_wrapper {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* 3列表示（980px以下） */
@media screen and (max-width: 980px) {
  #index08 .list_wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* 2列表示（640px以下） */
@media screen and (max-width: 640px) {
  #index08 .list_wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* 1列表示（480px以下） */
@media screen and (max-width: 480px) {
  #index08 .list_wrapper {
    grid-template-columns: 1fr;
  }
}

#index08 .detail_btn {
	text-align:center;
	margin-top:7.5rem;
}

#index08 .detail_btn a {
	display:inline-block;
	padding:2rem 12rem;
	background:#f07a8b;
	border-radius:6rem;
	color:#FFF;
	font-size:clamp(15px, 1.6vw, 20px);
	position:relative;
}

#index08 .detail_btn a span:after {
  content: url(../../images/icon_arrow_white.png);
  position: absolute;
  top: 50%;
  right:3rem;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
}





@media (max-width: 980px){
}

@media (max-width: 680px){
}

@media (max-width: 480px){
}
