/* =======================
	コラム一覧
	======================================================= */

.columnList__grp {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 30px);
  margin: 0 -15px;
}
@media only screen and (max-width: 767px) {
  .columnList__grp {
    display: block;
  }
}
.columnList__grp--center {
  -ms-flex-pack: center;
      justify-content: center;
}
.columnList__item {
  -ms-flex-preferred-size: calc(33% - 30px);
      flex-basis: calc(33% - 30px);
  display: -ms-flexbox;
  display: flex;
  margin: 0 15px;
}

.columnList__item:nth-child(n+4){
	margin-top: 25px;
}
@media only screen and (max-width: 767px) {
	.columnList__item + .columnList__item{
		margin-top: 20px;
	}
}

.columnList__link {
  display: block;
  width: 100%;
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 0 5px #fff, 0 0 5px rgba(0, 0, 0, 0.3), 0 0 1px rgba(0, 0, 0, 0.4);
  transition: all 0.2s ease-in-out;
  box-sizing: border-box;
  border: 3px solid #fff;
}
.columnList__link:hover {
  box-shadow: 0 0 5px #fff, 0 0 8px rgba(0, 0, 0, 0.5), 0 0 1px rgba(0, 0, 0, 0.4);
  border-color: #88CC5D;
}
.columnList__grp--4col .columnList__link {
  padding: 15px;
}
@media only screen and (max-width: 767px) {
  .columnList__grp--4col .columnList__link {
    display: -ms-flexbox;
    display: flex;
    padding: 10px;
    border-radius: 5px;
  }
}
.columnList__grp--4col .columnList__head {
  height: 70px;
}
@media only screen and (max-width: 767px) {
  .columnList__grp--4col .columnList__head {
    -ms-flex-order: 2;
        order: 2;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    padding-left: 10px;
    height: 50px;
  }
}
.columnList__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  color: #1A923B;
  margin: 10px 0;
  font-weight: bold;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .columnList__title {
    font-size: 20px;
    font-size: 2rem;
    margin: 5px 0 15px;
  }
}
@media only screen and (max-width: 767px) {
  .columnList__title--s {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
.columnList__grp--4col .columnList__title {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 10px 0 20px;
  background: linear-gradient(transparent 80%, #88CC5D 0%);
  display: inline-block;
  display: inline;
}
@media only screen and (max-width: 767px) {
  .columnList__grp--4col .columnList__title {
    margin: 0;
    font-size: 15px;
    font-size: 1.5rem;
    background: none;
    text-align: left;
  }
}
.columnList__titleSub {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 30px;
}
.columnList__img {
  width: 100%;
  position: relative;
  overflow: hidden;
}
/* .columnList__img::after {
  content: "";
  display: block;
  padding-top: 40%;
} */
.columnList__img img {
  width: 100%;
  height: auto;
  /* position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; */
  margin: auto;
}
@media only screen and (max-width: 767px) {
  .columnList__grp--4col .columnList__img {
    -ms-flex-order: 1;
        order: 1;
    -ms-flex-preferred-size: 100px;
        flex-basis: 100px;
    overflow: hidden;
  }
  .columnList__grp--4col .columnList__img img {
    width: 120%;
    left: -10%;
  }
}

.columnDate{
	color: #424242;
	font-size: 14px;
	font-size: 1.4rem;
	display: inline-flex;
    gap: 5px;
}

/* ページネーション */
.pagination {
	display: flex;
	align-items: center;
	list-style-type: none;
    margin: 60px 0 40px 0;
    justify-content: center;
  }
  .paginationItem__Link {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 44px;
	height: 44px;
	background: #fff;
	border: solid 1px #1A923B;
	border-radius: 5px;
	font-size: 18px;
	color: #12682B;
	font-weight: bold;
	transition: all 0.15s linear;
  }
  .paginationItem__Link-Icon {
	width: 20px;
  }
  .paginationItem__Link.is-active {
	background: #1A923B;
	color: #fff;
	pointer-events: none;
  }
  .paginationItem__Link:not(.is-active):hover {
	background: #1A923B;
	color: #fff;
  }
  .pagination > * + * {
	margin-left: 10px;
  }

/* =======================
	コラム詳細ページ
	======================================================= */
	.ly_column{
		width: 768px;
		box-sizing: border-box;
		margin: 0 auto;
	}
	@media only screen and (max-width: 767px){
		.ly_column{
			width: 100%;
			word-wrap: break-word;
			padding-right: 20px;
			padding-left: 20px;		
		}
	}
		.columnCover {
		background: linear-gradient(45deg, rgba(71, 167, 94, 1), rgba(145, 221, 96, 1));
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		position: relative;
		margin: 0 0 40px;
		padding: 40px 0;
	  }
	  @media only screen and (max-width: 767px) {
		.columnCover {
			padding: 30px 0;
			margin: 0 0 30px;
		}
	  }
	  
	  .columnHead {
		color: #fff;
	  }
	  .columnHead__title {
		-ms-flex-preferred-size: 500px;
			flex-basis: 500px;
		font-size: 32px;
		font-size: 3.2rem;
		font-weight: bold;
		line-height:1.25;
	  }
	  @media only screen and (max-width: 767px) {
		.columnHead__title {
		  font-size: 24px;
		  font-size: 2.4rem;
		}
	  }

	  .columnHead__date{
		font-size: 15px;
		display: inline-flex;
		gap: 5px;
		margin-top: 20px;
		font-weight: 400;
	  }
	  
	.columnFigure{
		margin-top: 20px;
	}
	.columnFigure:first-of-type{
		margin-top: 0;
	}

	.columnContent{
		letter-spacing: 0.02em;
		line-height:1.73;
		padding-bottom: 100px;
	}

	@media only screen and (max-width: 767px){
		.columnContent{
			padding-bottom: 50px;
		}
	}

	.columnIndex{
		border-radius: 5px;
		border: #C1BFB0 1px solid;
		padding: 25px 30px;
		margin-top: 40px;
	}
	@media only screen and (max-width: 767px){
		.columnIndex{
			padding: 20px;
		}
	  }


	.columnContent .columnIndex__title{
		text-align: center;
		margin: 0 auto;
		font-size: 18px;
		font-weight: bold;
	}
	@media only screen and (max-width: 767px){
		.columnContent .columnIndex__title{
			font-size: 18px;
			line-height: 1;
		}
	}

	.columnIndex__title .index_control{
		color: #C1BFB0;
		font-size: 15px;
		font-weight: 400;
	}

	.columnIndex__title .index_toggle{
		font-size: 15px;
		color: #1A923B;
		padding: 0 4px;
		background-color: transparent;
		border: 0;
	}

	.columnIndex__list{
	padding-inline-start: 1.25em;
	display: none;
	}

	.columnIndex__list li{
		font-size: 15px;
		line-height: 1.5;
	}
	.columnIndex__list li + li{
		margin-top: 10px;
	}
	.columnIndex__list li::marker{
		font-size: 16px;
		font-weight: bold;
		color: #0A0A0A;
	}
	.columnIndex__list li a{
		color: #1A923B;
	}
	.columnIndex__list li a:hover{
		opacity: .7;
	}

	.columnIndex__list.level-2{
		list-style-type: none;
		position: relative;
		padding-inline-start: 0;
		display: block;
	}
	.columnIndex__list.level-2 li{
		font-size: 14px;
		margin-top: 5px;
		padding-left: 15px;
		position: relative;
	}
	
	.columnIndex__list.level-2 li::before{
		display: block;
		content: "";
		width: 8px;
		height: 2px;
		background-color: #C1BFB0;
		position: absolute;
		top: 50%;
		left: 0;
		/* transform: translateY(-50%); */
	}

	.columnFigure img{
		width: 100%;
		height: auto;
	}
	.columnContent p{
		font-size: 15px;
		color: #424242;
		margin: 0;
	  }
	  .columnContent p a{
		color: #1A923B;
		text-decoration: underline;
	  }
	  .columnContent p a:hover{
		opacity: .7;
	  }

	  .columnContent p + p,
	  .columnFigure + p,
	  .columnContent ul + p,
	  .columnContent blockquote + p,
	  div + p,
	  .columnContent table + p{
		margin-top: 20px;
	  }

	  .columnContent h2{
		margin: 80px 0 20px;
		font-size: 32px;
		color: #1A923B;
		font-weight: bold;
	  }
	  @media only screen and (max-width: 767px){
		.columnContent h2{
			font-size: 24px;
			margin: 60px 0 20px;
			line-height:1.25;
		}
	  }

	  .columnContent h3{
		margin: 40px 0 20px;
		font-size: 24px;
		color: #0A0A0A;
		font-weight: bold;
	  }
	  @media only screen and (max-width: 767px){
		.columnContent h3{
			font-size: 18px;
			margin: 40px 0 20px;
			line-height:1.25;
		}
	  }

	  .columnContent blockquote {
		position: relative;
		padding: 20px;
		margin: 20px 0 0 0;
		box-sizing: border-box;
		background: #f5f5f5;
		color: #F5F5F5;
		border-left: 3px solid #C1BFB0;
		color: #424242;
		font-size: 15px;
		font-style: normal;
	}
	.columnContent blockquote p:first-of-type{
		margin-top: 0;
	}
	.columnContent blockquote cite{
		font-style: normal;
	}
	.columnContent blockquote cite a{
		color: #1A923B;
		text-decoration: underline;
	}
	.columnContent blockquote cite a:hover{
		opacity: .7;
	}

	.columnContent > ul{
		padding-inline-start: 1.5em;
		font-size: 15px;
		line-height: 1.25;
		margin-top: 20px;
	}

	.columnContent > ul li::marker{
		color: #1A923B;
	}
	.columnContent > ul li{
		padding: 5px 0;
	}
	.columnContent > ul li:first-child{
		padding-top: 10px;
	}
	.columnContent > ul li:last-child{
		padding-bottom: 10px;
	}

	.columnContent .btnarea{
		margin-top: 60px;
	}	  
	@media only screen and (max-width: 767px){
		.columnContent .btnarea{
			margin-top: 30px;
		}	  
		  }

	.columnContent table{
		width: 100%;
		margin-top: 20px;
	}

	.columnContent table th{
		background: #f5f5f5;
		border: 1px solid #C1BFB0;
		font-weight: bold;
		text-align: center;
		padding: 15px;
	}
	.columnContent table td{
		background: #fff;
		border: 1px solid #C1BFB0;
		padding: 15px;
	}
