@charset "UTF-8";

#contents {
	padding: 15px 0 100px;
}

/* ------------------------------
    pagettl
------------------------------ */

.pagettl {
	background: url(../img/info/bg_pagettl_pc.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.pagettl img {
	width: 484.5px;
	height: auto;
}


/* ------------------------------
    contents
------------------------------ */

.info .cate_area {
	margin-top: 80px;
	position: relative;
	overflow: hidden;
}

.info .cate_area .cate_box {
	flex-wrap: wrap;
}

.info .cate_area .cate_box li {
	margin-right: 10px;
	padding-bottom: 10px;
	line-height: normal;
}

.info .cate_area .cate_box li a {
	display: inline-block;
	font-size: 1.2rem;
	letter-spacing: 0;
	vertical-align: middle;
	color: #fff;
	line-height: 1;
	padding: 0 15px;
	border-radius: 15px;
	height: 30px;
	line-height: 26px;
	position: relative;
	overflow: hidden;
	transition: .3s;
	z-index: 1;
	background: #ff9003;
	border: 2px solid #ff9003;
}

.info .cate_all.btn {
	margin-top: 20px;
	margin-bottom: 50px;
}

.info .cate_all.btn a {
	width: 150px;
	height: 30px;
	line-height: 30px;
	background: #fff;
	font-size: 1.2rem;
	border: none;
	background-color: transparent;
	color: #ff9003;
}

.info .cate_all.btn a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: calc(100%);
	height: calc(100%);
	border-radius: 15px;
	z-index: -2;
	border: 3px solid #ff9003;
}


.info .list {
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 40px auto 50px;
}

.info .list li {
	background: #fffaef;
	width: 485px;
}

.info .list li:nth-child(even) {
	margin-left: 30px;
}

.info .list li + li:not(:nth-child(2)) {
	margin-top: 30px;
}

.info .list a {
	display: flex;
	align-items: center;
}

.info .list a .img {
	width: 120px;
	height: auto;
}

.info .list a .txt {
	width: calc(100% - 120px);
	padding: 0 30px;
}

.info .list a .cate {
	display: inline-block;
	font-size: 1.2rem;
	letter-spacing: 0;
	vertical-align: middle;
	color: #fff;
	line-height: 1;
	padding: 2px 10px;
	border-radius: 8px;
	margin-left: 8px;
	background: #ff9003;
}

.info .list a .date {
	display: inline-block;
	font-size: 1.4rem;
	letter-spacing: 0;
	vertical-align: middle;
	color: #c1c1c1;
}

.info .list a .ttl {
	font-size: 1.4rem;
	letter-spacing: 0;
	line-height: 1.5;
	margin-top: 5px;
}

.info .list a:hover .link_txt::before {
	width: 100%;
}

/*　カテゴリー一覧 */

.info.category .list {
	margin: 80px auto 50px;
}

/* detail_main 記事詳細 */

.info .detail_main {
	background: #fffaef;
	padding: 50px;
	margin: 80px 0 50px;
}

.info .detail_main .page_ttl {
	margin: 50px 0 20px;
}

.info .detail_main .page_ttl .date {
	display: inline-block;
	font-size: 1.6rem;
	letter-spacing: 0;
	line-height: 1;
	vertical-align: middle;
	color: #c1c1c1;
}

.info .detail_main .page_ttl .cate {
	display: inline-block;
	font-size: 1.6rem;
	letter-spacing: 0;
	vertical-align: middle;
	color: #fff;
	line-height: 1;
	padding: 4px 10px;
	border-radius: 12px;
	margin-left: 8px;
	background: #ff9003;
}

.info .detail_main .page_ttl .ttl {
	font-size: 1.8rem;
	letter-spacing: 0;
	line-height: 1.5;
	margin-top: 5px;
}

.info .detail_main .page_txt p + p {
	margin-top: 1.5em;
}

.info .detail_main .page_txt h1{
	position: relative;
	margin: 2em 0 1em;
	font-size: 2.6rem;
    line-height: 1.3em;
    font-weight: 600;
	padding: 0.6em;
	background: #005e32;
	color: #fff;
}
.info .detail_main .page_txt h1:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 30px;
	border: 15px solid transparent;
	border-top: 15px solid #005e32;
	width: 0;
	height: 0;
}
.info .detail_main .page_txt h2{
	margin: 2em 0 1em;
	font-size: 2.4rem;
    line-height: 1.3em;
    font-weight: 600;
	position: relative;
	padding-bottom: 0.5em;
	border-bottom: solid 3px #8cc63f;
}
.info .detail_main .page_txt h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #005e32;
	bottom: -3px;
	width: 30%;
}
.info .detail_main .page_txt h3{
	font-weight: 300;
	font-size: 2rem;
    line-height: 1.3em;
	margin: 2em 0 1em;
	padding-bottom: 0.5em;
	background: linear-gradient(transparent 70%, #005e32 70%);
}
.info .detail_main .page_txt h4{
	font-weight: 300;
	font-size:1.7rem;
    line-height: 1.3em;
	margin: 1em 0 0.5em;
	padding-bottom: 0.2em;
	border-bottom: 1px solid #005e32;
}
.info .detail_main .page_txt h5{
	position: relative;
	font-weight: 300;
	font-size:1.5rem;
    line-height: 1.3em;
	margin: 1em 0 0.5em;
	padding-left: 15px;
}
.info .detail_main .page_txt h5:before{
	position: absolute;
	top:0;
	left:0;
	content: "◆";
	color: #005e32;
}
@media screen and (min-width: 769px) {
	.info .cate_area .cate_box li a::after {
		position: absolute;
		transition: .3s;
		content: '';
		width: 0;
		bottom: -2px;
		background: #fff;
		height: 120%;
		left: -10%;
		-webkit-transform: skewX(15deg);
		transform: skewX(15deg);
		z-index: -1;
	}
	.info .cate_area ul li a:hover {
		color: #ff9003;
	}
	.info .cate_area .cate_box li a:hover::after {
		left: -10%;
		width: 120%;
	}
	.info .cate_all.btn a:hover {
		color: #fff;
	}
	.info .cate_all.btn a::after {
		background: #ff9003;
	}
}


@media screen and (max-width: 768px) {
	#contents {
		padding: 40px 0 50px;
	}
	/* ------------------------------
			pagettl
	------------------------------ */
	.pagettl {
		background: url(../img/info/bg_pagettl_sp.jpg) no-repeat;
		background-size: cover;
		background-position: center;
	}
	.pagettl img {
		width: 242px;
		height: auto;
	}
	/* ------------------------------
			contents
	------------------------------ */
	.info .cate_area {
		margin-top: 0;
	}
	.info .cate_area .cate_box li {
		line-height: normal;
		margin-right: 5px;
		padding-bottom: 5px;
	}

	.info .cate_area .cate_box li a {
		font-size: 0.9rem;
		padding: 0 10px;
		border-radius: 10px;
		height: 20px;
		line-height: 16px;
	}

	.info .cate_all.btn {
		margin-top: 10px;
		margin-bottom: 25px;
	}
	.info .cate_all.btn a {
		width: 150px;
		height: 25px;
		line-height: 25px;
		font-size: 1rem;
	}

	.info .list {
		margin: 20px auto 25px;
	}
	.info .list li {
		width: 100%;
	}
	.info .list li:nth-child(even) {
		margin-left: 0;
	}
	.info .list li + li {
		margin-top: 15px!important;
	}
	.info .list a .img {
		width: 77px;
		height: auto;
	}
	.info .list a .txt {
		display: block;
		width: calc(100% - 77px);
		padding: 0 15px;
	}
	.info .list a .cate {
		font-size: .8rem;
		padding: 2px 6px;
		border-radius: 7px;
		margin-left: 4px;
	}
	.info .list a .date {
		font-size: 0.9rem;
	}
	.info .list a .ttl {
		font-size: 1.2rem;
		margin-top: 2px;
		line-height: 1.4;
	}

	/*　カテゴリー一覧 */
	.info.category .list {
		margin: 0 auto 25px;
	}

	/* detail_main 記事詳細 */
	.info .detail_main {
		padding: 25px;
		margin: 0 auto 25px;
	}
	.info .detail_main .page_ttl {
		margin: 15px 0 8px;
	}
	.info .detail_main .page_ttl .date {
		font-size: 0.9rem;
	}
	.info .detail_main .page_ttl .cate {
		font-size: 0.9rem;
		padding: 2px 6px;
		border-radius: 7px;
		margin-left: 4px;
	}
	.info .detail_main .page_ttl .ttl {
		font-size: 1.2rem;
	}
	.info .detail_main .page_txt h1{
		font-size: 2.4rem;
	}
	.info .detail_main .page_txt h2{
		font-size: 2.2rem;
	}	
	.info .detail_main .page_txt h3{
		font-size: 1.8rem;
		padding-bottom: 0.3em;
		border-bottom: 8px solid #005e32;
		background: none;
	}
	.info .detail_main .page_txt h4{
		font-size: 1.6rem;
	}
	.info .detail_main .page_txt h5{
		font-size: 1.4rem;
	}

}